Commit Graph

80883 Commits

Author SHA1 Message Date
Eric Botcazou 4eff80454b re PR rtl-optimization/31691 (optimized code taking the wrong branch)
PR rtl-optimization/31691
	* combine.c (simplify_set): Build a new src pattern instead of
	substituting its operands in the COMPARE case.

From-SVN: r124797
2007-05-17 13:29:10 +00:00
Daniel Franke 0881653ce2 re PR fortran/31919 ([4.1/4.2 only] min/max do not check array conformance)
gcc/fortran:
2007-05-15  Daniel Franke  <franke.daniel@gmail.com>

        PR fortran/31919
        PR fortran/31929
        PR fortran/31930
        * intrinsic.c (check_specific): Check elemental intrinsics for
        rank and shape.
        (add_functions): Fixed dummy argument names of BESJN and BESYN.
        Fixed elemental status of MCLOCK and MCLOCK8.
        * check.c (check_rest): Added check for array conformance.
        (gfc_check_merge): Removed check for array conformance.
        (gfc_check_besn): Removed check for scalarity.
        * intrinsic.texi (CSHIFT, EOSHIFT): Fixed typos.
        (BESJN, BESYN): Clarified documentation.

gcc/testsuite:
2007-05-17  Daniel Franke <franke.daniel@gmail.com>

        PR fortran/31919
        * gfortran.dg/min_max_conformance.f90: New test.

From-SVN: r124794
2007-05-17 08:37:24 -04:00
Benjamin Kosnik a4e6a80f67 typedefs.cc: Fix dg bits.
2007-05-17  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/21_strings/char_traits/requirements/wchar_t/typedefs.cc: 
	Fix dg bits.
	* testsuite/21_strings/char_traits/requirements/char/typedefs.cc: Same.

From-SVN: r124793
2007-05-17 12:01:43 +00:00
Paolo Carlini 1d1c53d561 stl_algobase.h (mismatch): Move...
2007-05-17  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_algobase.h (mismatch): Move...
	* include/bits/stl_algo.h: ... here.

From-SVN: r124792
2007-05-17 11:52:06 +00:00
Benjamin Kosnik 95440e3ee0 cmath: Guard special math with __GXX_EXPERIMENTAL_CXX0X__.
2007-05-17  Benjamin Kosnik  <bkoz@redhat.com>

	* include/tr1/cmath: Guard special math with
	__GXX_EXPERIMENTAL_CXX0X__.
	* testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc:
	Remove xfail.

From-SVN: r124791
2007-05-17 11:37:27 +00:00
Paolo Carlini a576fe880e locale_facets.tcc (__pad<>::_S_pad): Minor tweaks, avoid unnecessary casts, do widenings just in time.
2007-05-17  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/locale_facets.tcc (__pad<>::_S_pad): Minor tweaks, avoid
	unnecessary casts, do widenings just in time.

From-SVN: r124790
2007-05-17 09:01:27 +00:00
Tobias Burnus 1941551ace gfortran.texi (GFORTRAN_CONVERT_UNIT): Improve documentation.
2007-05-17  Tobias Burnus  <burnus@net-b.de>

        * gfortran.texi (GFORTRAN_CONVERT_UNIT): Improve documentation.

From-SVN: r124788
2007-05-17 10:40:46 +02:00
Tobias Burnus 2d24f24b97 re PR fortran/31917 ([4.1 only] GFORTRAN_CONVERT_UNIT is ignored)
2007-05-14  Tobias Burnus <burnus@net-b.de>

        PR fortran/31917
        * runtime/environ.c (mark_range): Fix setting default convert unit.

From-SVN: r124787
2007-05-17 10:39:32 +02:00
Zdenek Dvorak b02b9b53ec tree-vrp.c (finalize_jump_threads): Do not care about dominance info.
* tree-vrp.c (finalize_jump_threads): Do not care about dominance info.
	(execute_vrp): Preserve loops through jump threading.
	* tree-ssa-threadupdate.c (thread_single_edge,
	dbds_continue_enumeration_p, determine_bb_domination_status,
	thread_through_loop_header): New functions.
	(create_edge_and_update_destination_phis,
	create_edge_and_update_destination_phis): Set loops for the new blocks.
	(prune_undesirable_thread_requests): Removed.
	(redirect_edges): Do not pretend that redirect_edge_and_branch can
	create new blocks.
	(thread_block): Do not call prune_undesirable_thread_requests.
	Update loops.
	(mark_threaded_blocks): Select edges to thread here.
	(thread_through_all_blocks): Take may_peel_loop_headers argument.
	Thread edges through loop headers independently.
	* cfgloopmanip.c (create_preheader, mfb_keep_just): Export.
	* tree-pass.h (TODO_mark_first_instance): New.
	(first_pass_instance): Declare.
	* cfghooks.c (duplicate_block): Put the block to the original loop
	if copy is not specified.
	* tree-ssa-dom.c (tree_ssa_dominator_optimize): Preserve loops through
	jump threading.  Pass may_peel_loop_headers to
	thread_through_all_blocks according to first_pass_instance.
	* cfgloop.h (create_preheader): Declare.
	* tree-flow.h (thread_through_all_blocks): Declaration changed.
	* basic-block.h (mfb_keep_just, mfb_kj_edge): Declare.
	* passes.c (first_pass_instance): New variable.
	(next_pass_1): Set TODO_mark_first_instance.
	(execute_todo): Set first_pass_instance.

	* gcc.dg/tree-ssa/ssa-dom-thread-2.c: New test.
	* gcc.dg/vect/vect-102.c, gcc.dg/vect/vect-103.c,
	gcc.dg/vect/vect-104.c: Use more complex construction to prevent vectorizing.
	* gcc.dg/tree-ssa/pr21559.c: Update outcome.

From-SVN: r124786
2007-05-17 08:10:24 +00:00
Uros Bizjak d2594859a6 * Remove svn:executable property.
From-SVN: r124785
2007-05-17 09:01:14 +02:00
Uros Bizjak d9987fb407 re PR tree-optimization/24659 (Conversions are not vectorized)
PR tree-optimization/24659
        * optabs.h (enum optab_index): Add OTI_vec_unpacks_float_hi,
	OTI_vec_unpacks_float_lo, OTI_vec_unpacku_float_hi,
	OTI_vec_unpacku_float_lo, OTI_vec_pack_sfix_trunc and
	OTI_vec_pack_ufix_trunc.
	(vec_unpacks_float_hi_optab): Define new macro.
	(vec_unpacks_float_lo_optab): Ditto.
	(vec_unpacku_float_hi_optab): Ditto.
	(vec_unpacku_float_lo_optab): Ditto.
	(vec_pack_sfix_trunc_optab): Ditto.
	(vec_pack_ufix_trunc_optab): Ditto.
	* genopinit.c (optabs): Implement vec_unpack[s|u]_[hi|lo]_optab
	and vec_pack_[s|u]fix_trunc_optab using
	vec_unpack[s|u]_[hi\lo]_* and vec_pack_[u|s]fix_trunc_* patterns
	* tree-vectorizer.c (supportable_widening_operation): Handle
	FLOAT_EXPR and CONVERT_EXPR.  Update comment.
	(supportable_narrowing_operation): New function.
	* tree-vectorizer.h (supportable_narrowing_operation): Prototype.
	* tree-vect-transform.c (vectorizable_conversion): Handle
	(nunits_in == nunits_out / 2) and (nunits_out == nunits_in / 2) cases.
	(vect_gen_widened_results_half): Move before vectorizable_conversion.
	(vectorizable_type_demotion): Call supportable_narrowing_operation()
	to check for target support.
	* optabs.c (optab_for_tree_code) Return vec_unpack[s|u]_float_hi_optab
	for VEC_UNPACK_FLOAT_HI_EXPR, vec_unpack[s|u]_float_lo_optab
	for VEC_UNPACK_FLOAT_LO_EXPR and vec_pack_[u|s]fix_trunc_optab
	for VEC_PACK_FIX_TRUNC_EXPR.
	(expand_binop): Special case mode of the result for
	vec_pack_[u|s]fix_trunc_optab.
	(init_optabs): Initialize vec_unpack[s|u]_[hi|lo]_optab and
	vec_pack_[u|s]fix_trunc_optab.

	* tree.def (VEC_UNPACK_FLOAT_HI_EXPR, VEC_UNPACK_FLOAT_LO_EXPR,
	VEC_PACK_FIX_TRUNC_EXPR): New tree codes.
	* tree-pretty-print.c (dump_generic_node): Handle
	VEC_UNPACK_FLOAT_HI_EXPR, VEC_UNPACK_FLOAT_LO_EXPR and
	VEC_PACK_FIX_TRUNC_EXPR.
	(op_prio): Ditto.
	* expr.c (expand_expr_real_1): Ditto.
	* tree-inline.c (estimate_num_insns_1): Ditto.
	* tree-vect-generic.c (expand_vector_operations_1): Ditto.

	* config/i386/sse.md (vec_unpacks_float_hi_v8hi): New expander.
	(vec_unpacks_float_lo_v8hi): Ditto.
	(vec_unpacku_float_hi_v8hi): Ditto.
	(vec_unpacku_float_lo_v8hi): Ditto.
	(vec_unpacks_float_hi_v4si): Ditto.
	(vec_unpacks_float_lo_v4si): Ditto.
	(vec_pack_sfix_trunc_v2df): Ditto.

	* doc/c-tree.texi (Expression trees) [VEC_UNPACK_FLOAT_HI_EXPR]:
	Document.
	[VEC_UNPACK_FLOAT_LO_EXPR]: Ditto.
	[VEC_PACK_FIX_TRUNC_EXPR]: Ditto.
	* doc/md.texi (Standard Names) [vec_pack_sfix_trunc]: Document.
	[vec_pack_ufix_trunc]: Ditto.
	[vec_unpacks_float_hi]: Ditto.
	[vec_unpacks_float_lo]: Ditto.
	[vec_unpacku_float_hi]: Ditto.
	[vec_unpacku_float_lo]: Ditto.

testsuite/ChangeLog:

	PR tree-optimization/24659
	* gcc.dg/vect/vect-floatint-conversion-2.c: New test.
	* gcc.dg/vect/vect-intfloat-conversion-1.c: Require vect_float,
	not vect_int target.
	* gcc.dg/vect/vect-intfloat-conversion-2.c: Require vect_float,
	not vect_int target.  Loop is vectorized for vect_intfloat_cvt
	targets.
	* gcc.dg/vect/vect-intfloat-conversion-3.c: New test.
	* gcc.dg/vect/vect-intfloat-conversion-4a.c: New test.
	* gcc.dg/vect/vect-intfloat-conversion-4b.c: New test.

From-SVN: r124784
2007-05-17 08:31:05 +02:00
David Daney f59d2a7c86 java-stack.h (_Jv_FrameInfo): Remove union definition.
* include/java-stack.h (_Jv_FrameInfo): Remove union definition.
	(_Jv_StackFrame): Remove commented out code.
	(_Jv_UnwindState): Remove superfluous 'typedef'.
	* sun/misc/natUnsafe.cc (spinlock): Add white space to quiet
	compiler warnings.
	* gnu/java/lang/management/natVMMemoryPoolMXBeanImpl.cc
	(getCollectionUsage): Don't declare unused parameter n.
	(getMemoryManagerNames): Same.
	* gnu/gcj/util/natGCInfo.cc (gc_debug_info): Remove superfluous
	'typedef'.

From-SVN: r124783
2007-05-17 03:53:45 +00:00
GCC Administrator d9c3e54582 Daily bump.
From-SVN: r124781
2007-05-17 00:19:02 +00:00
Keith Seitz 31795f2554 java-interp.h (breakpoint_at): Declare.
* include/java-interp.h (breakpoint_at): Declare.
        * interpret.cc (breakpoint_at): New function.
        * gnu/classpath/jdwp/VMVirtualMachine.java (_event_list):
        New member.
        * gnu/classpath/jdwp/natVMVirtualMachine.cc (initialize):
        Initialize _event_list.
        (handle_single_step): If there is a breakpoint at the
        location at which we are stopping, do not send the notification.
        Instead add the event to a list of events that occur at this
        location.
        (jdwpBreakpointCB): If the event list is not empty, send
        whatever events are in it and the breakpoint event in a single
        notification.
        Mark parameter jni_env as MAYBE_UNUSED.
        * classpath/lib/gnu/classpath/jdwp/VMVirtualMachine.class:
        Regenerated.
        * gnu/classpath/jdwp/VMVirtualMachine.h: Regenerated.

From-SVN: r124778
2007-05-16 20:13:52 +00:00
Keith Seitz 8faab1f43b java-interp.h (breakpoint_at): Declare.
* include/java-interp.h (breakpoint_at): Declare.
        * interpret.cc (breakpoint_at): New function.
        * gnu/classpath/jdwp/VMVirtualMachine.java (_event_list):
        New member.
        * gnu/classpath/jdwp/natVMVirtualMachine.cc (initialize):
        Initialize _event_list.
        (handle_single_step): If there is a breakpoint at the
        location at which we are stopping, do not send the notification.
        Instead add the event to a list of events that occur at this
        location.
        (jdwpBreakpointCB): If the event list is not empty, send
        whatever events are in it and the breakpoint event in a single
        notification.
        Mark parameter jni_env as MAYBE_UNUSED.
        * classpath/lib/gnu/classpath/jdwp/VMVirtualMachine.class:
        Regenerated.
        * gnu/classpath/jdwp/VMVirtualMachine.h: Regenerated.

From-SVN: r124777
2007-05-16 20:12:33 +00:00
Uros Bizjak c747a42fb4 Add two files missing from my previous commit.
From-SVN: r124776
2007-05-16 19:56:41 +02:00
Uros Bizjak 27735edb45 README: Update for new files.
* soft-fp/README: Update for new files.
        * soft-fp/floattisf.c: New file.
        * soft-fp/floattidf.c: New file.
        * soft-fp/floattitf.c: New file.
        * soft-fp/floatuntisf.c: New file.
        * soft-fp/floatuntidf.c: New file.
        * soft-fp/floatuntitf.c: New file.
        * soft-fp/fixsfti.c: New file.
        * soft-fp/fixdfti.c: New file.
        * soft-fp/fixtfti.c: New file.
        * soft-fp/fixunssfti.c: New file.
        * soft-fp/fixunsdfti.c: New file.
        * soft-fp/fixunstfti.c: New file.
        * soft-fp/extendxftf.c: New file.
        * soft-fp/trunctfxf.c: New file.

        * libgcc-std.ver (__extendxftf2): Added to GCC_4.3.0 section.
        (__trunctfxf2): Ditto.

        * config/i386/libgcc-x86_64-glibc.ver (__addtf3, __divtf3, __eqtf2,
        __extenddftf2, __extendsftf2, __fixtfdi, __fixtfsi, __fixtfti,
        __fixunstfdi, __fixunstfsi, __fixunstfti, __floatditf, __floatsitf,
        __floattitf, __floatunditf, __floatunsitf, __floatuntitf, __getf2,
        __letf2, __multf3, __negtf2, __subtf3, __trunctfdf2, __trunctfsf2,
        __unordtf2): Exclude and add to GCC_4.3.0 section for x86_64 targets.

        * config/i386/t-fprules-softfp64: New file.
        * config/i386/sfp-machine.h: New file.
        * config.gcc (x86_64-*-linux*, x86_64-*-kfreebsd*-gnu,
        x86_64-*-knetbsd*-gnu): Add i386/t-fprules-softfp64
        and soft-fp/t-softfp to tmake_file.
        (i[34567]86-*-linux*, i[34567]86-*-kfreebsd*-gnu,
        i[34567]86-*-knetbsd*-gnu): Ditto for --enable-targets=all.

        * config/i386/t-linux64 (softfp_wrap_start): New.
        (softfp_wrap_end): New.
        * config/i386/i386.c (ix86_scalar_mode_supported): TFmode is
        supported for TARGET_64BIT.

testsuite/ChangeLog:

        * gcc.dg/torture/fp-int-convert-float128.c: Do not xfail for i?86-*-*
        and x86_64-*-* targets.
        * gcc.dg/torture/fp-int-convert-float128-timode.c: Ditto.

From-SVN: r124775
2007-05-16 19:07:07 +02:00
Benjamin Kosnik f99a36b8a0 [multiple changes]
2007-05-16  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCXX_CHECK_COMPILER_FEATURES): Add a function
	to the test code compiled with -ffunction-sections -fdata-sections.
	* configure: Regenerate.

	* testsuite/22_locale/ctype/scan/wchar_t/1.cc: Remove
	_GLIBCXX_USE_WCHAR_T guards as superfluous.
	
	* testsuite/20_util/make_signed/requirements/typedefs-1.cc: Add
	_GLIBCXX_USE_WCHAR_T guards.	
	* testsuite/20_util/make_signed/requirements/typedefs-2.cc: Same.
	* testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Same.
	* testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Same.

	* testsuite/21_strings/char_traits/requirements/wchar_t/typedefs.cc: 
	Add.
	* testsuite/21_strings/char_traits/typedefs/char/1.cc: Move...
	* testsuite/21_strings/char_traits/requirements/char/typedefs.cc: 
	...here.
	* testsuite/21_strings/char_traits/typedefs: Remove.
	* testsuite/21_strings/char_traits/typedefs/char: Remove.
	
2007-05-16  Benjamin Kosnik  <bkoz@redhat.com>	

	* docs/html/abi.html: Update for gcc-4.1.2 and gcc-4.2.0.

From-SVN: r124774
2007-05-16 17:00:58 +00:00
Benjamin Kosnik 3322ee1183 acinclude.m4 (GLIBCXX_CHECK_COMPILER_FEATURES): Add a function to the test code compiled with -ffunction-sections -fdata-sections.
2007-05-11  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCXX_CHECK_COMPILER_FEATURES): Add a function
	to the test code compiled with -ffunction-sections -fdata-sections.
	* configure: Regenerate.

	* testsuite/22_locale/ctype/scan/wchar_t/1.cc: Remove
	_GLIBCXX_USE_WCHAR_T guards as superfluous.
	
	* testsuite/20_util/make_signed/requirements/typedefs-1.cc: Add
	_GLIBCXX_USE_WCHAR_T guards.	
	* testsuite/20_util/make_signed/requirements/typedefs-2.cc: Same.
	* testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Same.
	* testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Same.

	* testsuite/21_strings/char_traits/requirements/wchar_t/typedefs.cc: 
	Add.
	* testsuite/21_strings/char_traits/typedefs/char/1.cc: Move...
	* testsuite/21_strings/char_traits/requirements/char/typedefs.cc: 
	...here.
	* testsuite/21_strings/char_traits/typedefs: Remove.
	* testsuite/21_strings/char_traits/typedefs/char: Remove.

From-SVN: r124773
2007-05-16 16:54:48 +00:00
Benjamin Kosnik 2c4b148c84 acinclude.m4 (GLIBCXX_CHECK_COMPILER_FEATURES): Add a function to the test code compiled with -ffunction-sections -fdata-sections.
2007-05-11  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCXX_CHECK_COMPILER_FEATURES): Add a function
	to the test code compiled with -ffunction-sections -fdata-sections.
	* configure: Regenerate.

	* testsuite/22_locale/ctype/scan/wchar_t/1.cc: Remove
	_GLIBCXX_USE_WCHAR_T guards as surpufulous.
	
	* testsuite/20_util/make_signed/requirements/typedefs-1.cc: Add
	_GLIBCXX_USE_WCHAR_T guards.	
	* testsuite/20_util/make_signed/requirements/typedefs-2.cc: Same.
	* testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Same.
	* testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Same.

	* testsuite/21_strings/char_traits/requirements/wchar_t/typedefs.cc: 
	Add.
	* testsuite/21_strings/char_traits/typedefs/char/1.cc: Move...
	* testsuite/21_strings/char_traits/requirements/char/typedefs.cc: 
	...here.
	* testsuite/21_strings/char_traits/typedefs: Remove.
	* testsuite/21_strings/char_traits/typedefs/char: Remove.

From-SVN: r124772
2007-05-16 16:47:47 +00:00
Rafael Avila de Espindola c74a03d23e c-common.c (c_common_signed_or_unsigned_type): Emulate c_common_unsigned_type behavior.
2007-05-16  Rafael Avila de Espindola  <espindola@google.com>

       * c-common.c (c_common_signed_or_unsigned_type): Emulate
       c_common_unsigned_type behavior.

From-SVN: r124771
2007-05-16 16:26:21 +00:00
Benjamin Kosnik 0d8c60585e abi.html: Update for gcc-4.1.2 and gcc-4.2.0.
2007-05-11  Benjamin Kosnik  <bkoz@redhat.com>

	* docs/html/abi.html: Update for gcc-4.1.2 and gcc-4.2.0.

From-SVN: r124766
2007-05-16 09:35:42 +00:00
Paolo Bonzini 2d79fde8c2 i386.c (legitimize_tls_address): Mark __tls_get_addr calls as pure.
2007-05-16  Paolo Bonzini  <bonzini@gnu.org>

        * config/i386/i386.c (legitimize_tls_address): Mark __tls_get_addr
        calls as pure.

From-SVN: r124765
2007-05-16 09:23:21 +00:00
Paolo Bonzini 342b920070 Makefile.def (bootstrap_stage): Replace stage_make_flags with stage_cflags.
2007-05-16  Paolo Bonzini  <bonzini@gnu.org>

	* Makefile.def (bootstrap_stage): Replace stage_make_flags with
	stage_cflags.
	* Makefile.tpl (POSTSTAGE1_HOST_EXPORTS, POSTSTAGE1_FLAGS_TO_PASS):
	Remove CFLAGS/LIBCFLAGS.
	(configure-stage[+id+]-[+prefix+][+module+],
	all-stage[+id+]-[+prefix+][+module+]): Pass it from [+stage_cflags+].
	* Makefile.in: Regenerate.

From-SVN: r124764
2007-05-16 09:01:01 +00:00
Eric Christopher 2b2c2fe51a rs6000.c (rs6000_emit_prologue): Move altivec register saving after stack push.
2007-05-16  Eric Christopher  <echristo@apple.com>

	* config/rs6000/rs6000.c (rs6000_emit_prologue): Move altivec register
        saving after stack push. Set sp_offset whenever we push.
        (rs6000_emit_epilogue): Move altivec register restore before stack push.

From-SVN: r124763
2007-05-16 08:30:10 +00:00
Richard Sandiford 748670c25b configure.ac: Allow sysroots to be relocated under $prefix as well as $exec_prefix.
gcc/
	* configure.ac: Allow sysroots to be relocated under $prefix as
	well as $exec_prefix.
	* configure: Regenerate.

From-SVN: r124762
2007-05-16 07:14:40 +00:00
David Daney ee12b57dc3 HTMLEditorKit.class: Regenerate
* classpath/lib/javax/swing/text/html/HTMLEditorKit.class: Regenerate
	* gnu/java/awt/peer/gtk/ComponentGraphics.h: Same.

From-SVN: r124761
2007-05-16 06:54:58 +00:00
Richard Sandiford 4ef2b6ed33 revert: configure.ac (gcc_gxx_include_dir): Use $(libsubdir_to_prefix).
gcc/
	Revert:

	2007-05-12  Richard Sandiford  <richard@codesourcery.com>

	* configure.ac (gcc_gxx_include_dir): Use $(libsubdir_to_prefix).
	(gcc_tooldir): Likewise.
	* configure: Regenerate.
	* Makefile.in (libsubdir_to_prefix): New variable, based on the
	old configure.ac gcc_tooldir setting.
	(prefix_to_exec_prefix): New variable.
	(DRIVER_DEFINES): Use $(libsubdir_to_prefix)$(prefix_to_exec_prefix)
	rather than $(unlibsubdir)/../ to derive TOOLDIR_BASE_PREFIX.

From-SVN: r124760
2007-05-16 06:43:36 +00:00
Paul Thomas 7433458d87 [multiple changes]
2007-05-16  Brooks Moses  <brooks.moses@codesourcery.com>

	PR fortran/18769
	PR fortran/30881
	PR fortran/31194
	PR fortran/31216
	PR fortran/31427
	* target-memory.c: New file.
	* target-memory.h: New file.
	* simplify.c: Add #include "target-memory.h".
	(gfc_simplify_transfer): Implement constant-
	folding for TRANSFER intrinsic.
	* Make-lang.in: Add dependencies on new target-memory.* files.

2007-05-16  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/18769
	PR fortran/30881
	PR fortran/31194
	PR fortran/31216
	PR fortran/31427
	* transfer_simplify_1.f90: New test.
	* transfer_simplify_2.f90: New test.

From-SVN: r124759
2007-05-16 05:40:51 +00:00
Dominique d'Humieres 9847030dba unf_io_convert_3.f90: Fix dg directive.
2007-05-15  Dominique d'Humieres  <dominiq@lps.ens.fr>

	* gfortran.dg/unf_io_convert_3.f90: Fix dg directive.
	Fix previous changelog to show subdirectory.

From-SVN: r124758
2007-05-16 02:00:10 +00:00
Diego Novillo cea1728560 MAINTAINERS: Update e-mail address.
* MAINTAINERS: Update e-mail address.

From-SVN: r124757
2007-05-15 21:57:30 -04:00
Jerry DeLisle d5638e6e67 re PR fortran/31922 ([4.2 only] Accessing uninitialized variable for print *, trim(blank_string))
2007-05-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/31922
	* intrinsics/string_intrinsics.c (string_trim): Set result to null if
	string length is zero.

From-SVN: r124754
2007-05-16 00:37:55 +00:00
GCC Administrator 86977b7206 Daily bump.
From-SVN: r124752
2007-05-16 00:17:54 +00:00
Paul Brook 5218394a4c trans-types.c (gfc_type_for_size): Handle signed TImode.
2007-05-15  Paul Brook  <paul@codesourcery.com>

	* trans-types.c (gfc_type_for_size): Handle signed TImode.

From-SVN: r124748
2007-05-15 21:47:54 +00:00
Keith Seitz 98265f29a6 interpret.cc (STOREA): Rewrite using temporary variable to avoid double-macro expansion side-effects.
* interpret.cc (STOREA): Rewrite using temporary variable to
        avoid double-macro expansion side-effects.
        (STOREI): Likewise.
        (STOREF): Likewise.
        (STOREL)[SIZEOF_VOID_P == 8]: Likewise.
        (STORED)[SIZEOF_VOID_P == 8]: Likewise.
        (STOREL)[SIZEOF_VOID_P != 8]: Likewise.
        (STORED)[SIZEOF_VOID_P != 8]: Likewise.
        (POKEI): Likewise.

From-SVN: r124746
2007-05-15 21:35:28 +00:00
Revital Eres 11c004e7f0 add self to MAINTAINERS: waa
From-SVN: r124742
2007-05-15 10:29:20 +00:00
Tobias Burnus 80bcbc8044 re PR libfortran/31915 (Failure with unf_io_convert_3.f90)
2007-05-15  Tobias Burnus  <burnus@net-b.de>

        PR libfortran/31915
        * io/transfer.c (unformatted_read): Use proper size for real(10).
          (unformatted_write): Ditto.

From-SVN: r124741
2007-05-15 12:16:46 +02:00
GCC Administrator ca0bfd1028 Daily bump.
From-SVN: r124736
2007-05-15 00:17:47 +00:00
Kaz Kojima c7dbecf333 17_hyperg/check_nan.cc: Add -mieee for sh.
* testsuite/tr1/5_numerical_facilities/special_functions/
	17_hyperg/check_nan.cc: Add -mieee for sh.

From-SVN: r124733
2007-05-15 00:03:18 +00:00
Janis Johnson 3bf6bfcc7e c-typeck.c (build_binary_op): Return early for error.
gcc/
	* c-typeck.c (build_binary_op): Return early for error.
gcc/testsuite/
	* gcc.dg/dfp/usual-arith-conv-bad.c: New test.

From-SVN: r124732
2007-05-14 23:49:36 +00:00
Janis Johnson 5a6bb57eb9 expr.c (cpp_classify_number): Warn about dfp constant for -pedantic.
libcpp/
        * expr.c (cpp_classify_number): Warn about dfp constant for -pedantic.
gcc/testsuite/
        * gcc.dg/fltconst-pedantic-dfp.c: New test.

From-SVN: r124731
2007-05-14 23:45:40 +00:00
Janis Johnson 30e0492187 re PR c/31924 (gcc accepts invalid suffixes for decimal float constants)
libcpp/
        PR c/31924
        * expr.c (interpret_float_suffix): Check for invalid suffix.
gcc/testsuite/
        PR c/31924
        * gcc.dg/fltconst-1.c: New test.

From-SVN: r124730
2007-05-14 23:43:07 +00:00
Janis Johnson d077694a0f func-mixed.c: Replace invalid constant suffixes.
* gcc.dg/dfp/func-mixed.c: Replace invalid constant suffixes.
	* gcc.dg/dfp/operator-assignment.c: Ditto.

From-SVN: r124729
2007-05-14 22:26:38 +00:00
Zdenek Dvorak 9e2f83a5e8 tree-ssa-loop-niter.c (record_estimate): Use GGC_NEW to allocate struct nb_iter_bound.
* tree-ssa-loop-niter.c (record_estimate): Use GGC_NEW to allocate
	struct nb_iter_bound.
	(free_numbers_of_iterations_estimates_loop): Use ggc_free.
	* gengtype.c (open_base_files): Add cfhloop.h to the list of includes.
	* cfgloopmanip.c (place_new_loop): Vector larray is gc-allocated.
	* tree-scalar-evolution.c: Include gt-tree-scalar-evolution.h.
	(struct scev_info_str, scalar_evolution_info): Add GTY markers.
	(new_scev_info_str): Use GGC_NEW to allocate struct scev_info_str.
	(del_scev_info): Use ggc_free.
	(scev_initialize): Allocate scalar_evolution_info in gc memory.
	* loop-init.c: Include ggc.h.
	(loop_optimizer_init): Use GGC_CNEW to allocate struct loops.
	(loop_optimizer_finalize): Use ggc_free.
	* tree-ssa-loop.c (pass_tree_unswitch, pass_vectorize,
	pass_linear_transfom, pass_empty_loop, pass_complete_unroll,
	pass_iv_optimize): Add TODO_ggc_collect.
	* function.h (struct function): Remove skip marker from x_current_loops.
	* cfgloop.c: Include ggc.h.
	(flow_loops_free, flow_loop_free): Free the loop descriptions in gc
	memory.
	(establish_preds): Vector superloops is gc allocated.
	(alloc_loop): Allocate loop using GGC_CNEW.  Allocate head of
	loop->exits list.
	(flow_loops_find): Vector larray is gc allocated.
	(loop_exit_free): Use ggc_free.
	(rescan_loop_exit): Use GGC_NEW to allocate struct loop_exit.  Reflect
	that head of exits list is now not a part of struct loop.
	(record_loop_exits): Allocate exits table in gc memory.
	(get_loop_exit_edges, verify_loop_structure, single_exit): Reflect that
	head of exits list is now not a part of struct loop.
	* cfgloop.h (struct lpt_decision, struct nb_iter_bound,
	struct loop_exit): Add GTY marker.
	(struct loop): Add GTY marker.  Make superloops vector gc allocated.
	Add skip marker to aux field.  Make head of exits list a separate
	object.
	(struct loops): Add GTY marker.  Make larray vector gc allocated.
	Add param marker to exits table.
	(get_loops): Type changed.
	* Makefile.in (tree-scalar-evolution.o): Add gt-tree-scalar-evolution.h
	dependency.
	(cfgloop.o, loop-init.o): Add ggc.h dependency.
	(GTFILES): Add cfgloop.h and tree-scalar-evolution.c.
	* basic-block.h (struct basic_block_def): Remove skip marker from
	loop_father field.

From-SVN: r124727
2007-05-14 21:58:42 +00:00
Paolo Carlini 9c49a5e4b3 re PR c++/29928 (typeid of unknown bound array)
/cp
2007-05-14  Paolo Carlini  <pcarlini@suse.de>

	PR c++/29928
	* rtti.c (get_tinfo_decl_dynamic, get_typeid): Try to complete the
	type only if is a class type (5.2.8/4).

/testsuite
2007-05-14  Paolo Carlini  <pcarlini@suse.de>

	PR c++/29928
	* g++.dg/rtti/typeid5.C: New.

From-SVN: r124724
2007-05-14 20:21:34 +00:00
Uros Bizjak 49452c070f builtins.c (expand_builtin_mathfn): Use EXPAND_NORMAL instead of 0 in the call to expand_expr().
* builtins.c (expand_builtin_mathfn): Use EXPAND_NORMAL instead
        of 0 in the call to expand_expr().
        (expand_builtin_mathfn_3): Ditto.
        (expand_builtin_interclass_mathfn): Ditto.
        (expand_builtin_cexpi): Ditto.
        (expand_builtin_int_roundingfn): Ditto.
        (expand_builtin_int_roundingfn_2): Ditto.
        (expand_builtin_pow): Ditto.
        (expand_builtin_powi): Ditto.
        (expand_builtin_bswap): Ditto.
        (expand_builtin_unop): Ditto.
        (expand_builtin_fabs): Ditto.
        (get_builtin_sync_mem): Use NULL_RTX instead of NULL in
        the call to expand_expr().
        (expand_builtin_sync_operation): Ditto.
        (expand_builtin_compare_and_swap): Ditto.
        (expand_builtin_lock_test_and_set): Ditto.
        * except.c (expand_builtin_eh_return_data_regno): Use EXPAND_NORMAL
        instead of 0 in the call to expand_expr().
        (expand_builtin_extract_return_addr): Ditto.
        (expand_builtin_eh_return): Ditto.
        (expand_eh_return): Ditto.
        * explow.c (expr_size): Ditto.
        * expr.c (optimize_bitfield_assignment_op): Ditto.
        (expand_assignement): Ditto.
        (store_expr): Ditto.
        (store_field): Ditto.
        (expand_expr_addr_expr_1): Use NULL_RTX instead of NULL in
        the call to expand_expr().
        (expand_expr_real_1) [COMPLEX_CST]: Use EXPAND_NORMAL instead of 0
        in the call to expand_expr().
        [CONSTRUCTOR, PLUS_EXPR, MINUS_EXPR, NEGATE_EXPR, ABS_EXPR,
        BIT_NOT_EXPR, LSHIFT_EXPR, LT_EXPR, TRUTH_NOT_EXPR]: Ditto.
        [VEC_UNPACK_HI_EXPR, VEC_UNPACK_LO]: Use expand_normal() instead
        of expand_expr().
        * optabs.c (expand_vec_shift_expr): Ditto.
        (expand_vec_cond_expr): Ditto.
        (vector_compare_rtx): Use EXPAND_STACK_PARM instead of 1 in the
        call to expand_expr().
        * stmt.c (expand_return): Use EXPAND_NORMAL instead of 0
        in the call to expand_expr().

From-SVN: r124722
2007-05-14 21:42:47 +02:00
Francois-Xavier Coudert 1529b8d9be re PR fortran/30723 (Freeing memory doesn't need to call a library function)
PR fortran/30723

	* trans.h (gfor_fndecl_internal_malloc, gfor_fndecl_internal_malloc64,
	gfor_fndecl_internal_free): Remove prototypes.
	(gfor_fndecl_os_error, gfc_call_free, gfc_call_malloc): Add prototypes.
	* trans.c (gfc_call_malloc, gfc_call_free): New functions.
	* f95-lang.c (gfc_init_builtin_functions): Add __builtin_free
	and __builtin_malloc builtins.
	* trans-decl.c (gfor_fndecl_internal_malloc,
	gfor_fndecl_internal_malloc64, gfor_fndecl_internal_free): Remove.
	(gfor_fndecl_os_error): Add.
	(gfc_build_builtin_function_decls): Don't create internal_malloc,
	internal_malloc64 and internal_free library function declaration.
	Create os_error library call function declaration.
	* trans-array.c (gfc_trans_allocate_array_storage,
	gfc_trans_auto_array_allocation, gfc_trans_dummy_array_bias,
	gfc_conv_array_parameter, gfc_duplicate_allocatable): Use
	gfc_call_malloc and gfc_call_free instead of building calls to
	internal_malloc and internal_free.
	* trans-expr.c (gfc_conv_string_tmp): Likewise.
	* trans-stmt.c (gfc_do_allocate, gfc_trans_assign_need_temp,
	gfc_trans_pointer_assign_need_temp, gfc_trans_forall_1,
	gfc_trans_where_2: Likewise.
	* trans-intrinsic.c (gfc_conv_intrinsic_ctime,
	gfc_conv_intrinsic_fdate, gfc_conv_intrinsic_ttynam,
	gfc_conv_intrinsic_array_transfer, gfc_conv_intrinsic_trim): Likewise.

	* runtime/memory.c (internal_malloc, internal_malloc64,
	internal_free): Remove.
	* runtime/error.c (os_error): Export function.
	* intrinsics/move_alloc.c: Include stdlib.h.
	(move_alloc): Call free instead of internal_free.
	(move_alloc_c): Wrap long lines.
	* libgfortran.h (os_error): Export prototype.
	(internal_free): Remove prototype.
	* gfortran.map (GFORTRAN_1.0): Remove _gfortran_internal_free,
	_gfortran_internal_malloc and _gfortran_internal_malloc64.
	Add _gfortran_os_error.

From-SVN: r124721
2007-05-14 19:33:57 +00:00
François-Xavier Coudert 1af5627c40 re PR fortran/31725 ([4.1 only] substring bound evaluated multiple times: wrong code for string(function():) = 'X')
PR fortran/31725

	* trans-expr.c (gfc_conv_substring): Evaluate substring bounds
	only once.

	* gfortran.dg/substr_4.f: New test.

From-SVN: r124720
2007-05-14 19:29:33 +00:00
Dave Korn 9c40feebdb genautomata.c (gen_regexp_el): Allocate correct size for regexp.
2007-05-14  Dave Korn  <dave.korn@artimi.com>

	* genautomata.c (gen_regexp_el):  Allocate correct size for regexp.

From-SVN: r124718
2007-05-14 16:46:44 +00:00
Paolo Carlini 2fdff2be24 testsuite_io.h: Only include <ios>.
2007-05-14  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/util/testsuite_io.h: Only include <ios>.

From-SVN: r124717
2007-05-14 16:44:31 +00:00