Commit Graph

102459 Commits

Author SHA1 Message Date
Janus Weil f08f8b6a53 re PR fortran/45439 ([OOP] SELECT TYPE bogus complaint about INTENT)
2010-08-29  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/45439
	* match.c (gfc_match_select_type): Give the associate-name the
	FL_VARIABLE attribute.


2010-08-29  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/45439
	* gfortran.dg/select_type_16.f03: New.

From-SVN: r163626
2010-08-29 11:56:45 +02:00
GCC Administrator ae04c688c0 Daily bump.
From-SVN: r163624
2010-08-29 00:17:32 +00:00
Francois-Xavier Coudert 08fd13d447 mtype.m4 (upcase, [...]): New macros.
* m4/mtype.m4 (upcase, hasmathfunc, mathfunc_macro): New macros.
	* m4/fraction.m4: Use new macros to support quad-float types.
	* m4/set_exponent.m4: Likewise.
	* m4/spacing.m4: Likewise.
	* m4/exponent.m4: Likewise.
	* m4/nearest.m4: Likewise.
	* m4/norm2.m4: Likewise.
	* m4/bessel.m4: Likewise.
	* m4/rrspacing.m4: Likewise.
	* generated/bessel_r4.c:Regenerated.
	* generated/bessel_r8.c: Regenerated.
	* generated/bessel_r10.c: Regenerated.
	* generated/bessel_r16.c: Regenerated.
	* generated/exponent_r4.c: Regenerated.
	* generated/exponent_r8.c: Regenerated.
	* generated/exponent_r10.c: Regenerated.
	* generated/exponent_r16.c: Regenerated.
	* generated/fraction_r4.c: Regenerated.
	* generated/fraction_r8.c: Regenerated.
	* generated/fraction_r10.c: Regenerated.
	* generated/fraction_r16.c: Regenerated.
	* generated/nearest_r4.c: Regenerated.
	* generated/nearest_r8.c: Regenerated.
	* generated/nearest_r10.c: Regenerated.
	* generated/nearest_r16.c: Regenerated.
	* generated/norm2_r4.c: Regenerated.
	* generated/norm2_r8.c: Regenerated.
	* generated/norm2_r10.c: Regenerated.
	* generated/norm2_r16.c: Regenerated.
	* generated/rrspacing_r4.c: Regenerated.
	* generated/rrspacing_r8.c: Regenerated.
	* generated/rrspacing_r10.c: Regenerated.
	* generated/rrspacing_r16.c: Regenerated.
	* generated/set_exponent_r4.c: Regenerated.
	* generated/set_exponent_r8.c: Regenerated.
	* generated/set_exponent_r10.c: Regenerated.
	* generated/set_exponent_r16.c: Regenerated.
	* generated/spacing_r4.c: Regenerated.
	* generated/spacing_r8.c: Regenerated.
	* generated/spacing_r10.c: Regenerated.
	* generated/spacing_r16.c: Regenerated.

From-SVN: r163620
2010-08-28 22:10:52 +00:00
Eric Botcazou bf321310b1 * config/ia64/ia64.md (cstorebi4): Fix thinko.
From-SVN: r163618
2010-08-28 20:07:43 +00:00
Hariharan Sandanagobalane 179ba6b882 re PR target/45299 (Dwarf information is wrong with optimised code.)
* config/picochip/picochip.c (reorder_var_tracking_notes): This
          function was dropping debug insns which caused PR45299.

From-SVN: r163617
2010-08-28 16:40:27 +00:00
Uros Bizjak ee9dd92eea sse.md (extsuffix): New code attribute.
* config/i386/sse.md (extsuffix): New code attribute.
	(sse4_1_<code>v8qiv8hi2): Macroize insn from sse4_1_extendv8qiv8hi2
	and sse4_1_zero_extendv8qiv8hi2 using any_extend code iterator.
	(sse4_1_<code>v4qiv4si2): Ditto from sse4_1_extendv4qiv4si2
	and sse4_1_zero_extendv4qiv4si2.
	(sse4_1_<code>v2qiv2di2): Ditto from sse4_1_extendv2qiv2di2
	and sse4_1_zero_extendv2qiv2di2.
	(sse4_1_<code>v4hiv4si2): Ditto from sse4_1_extendv4hiv4si2
	and sse4_1_zero_extendv4hiv4si2.
	(sse4_1_<code>v2hiv2di2): Ditto from sse4_1_extendv2hiv2di2
	and sse4_1_zero_extendv2hiv2di2.
	(sse4_1_extendv2siv2di2): Ditto from sse4_1_extendv2siv2di2
	and sse4_1_zero_extendv2siv2di2

	(<s>mulv8hi3_highpart): Macroize expander from {u,s}mulv8hi3_highpart
	using any_extend code iterator.
	(*avx_<s>mulv8hi3_highpart): Macroize insn from
	*avx_{u,s}mulv8hi3_highpart using any_extend code iterator.
	(*<s>mulv8hi3_highpart): Ditto from *{u,s}mulv8hi3_highpart.

	* config/i386/i386.c (ix86_expand_sse4_unpack): Update for renamed
	gen_sse4_1_sign_extend* functions.
	(struct builtin_description bdesc_args): Ditto.

From-SVN: r163616
2010-08-28 16:30:34 +02:00
Steven G. Kargl 4c6e913ce8 simplify.c (gfc_simplify_bessel_n2): Fix indention and argument type.
fortran/
2010-07-21  Steven G. Kargl  <kargl@gcc.gnu.org>

        * simplify.c (gfc_simplify_bessel_n2): Fix indention
        and argument type.

testsuite/
2010-07-21  Steven G. Kargl  <kargl@gcc.gnu.org>
            Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/bessel_7.f90: Decrease required precision.


Co-Authored-By: Tobias Burnus <burnus@net-b.de>

From-SVN: r163615
2010-08-28 16:27:34 +02:00
Tobias Burnus e4ff7a56c6 mk-kinds-h.sh: Disable REAL(16) if REAL(10) is available.
2010-08-28  Tobias Burnus  <burnus@net-b.de>

        * mk-kinds-h.sh: Disable REAL(16) if REAL(10) is available.

From-SVN: r163612
2010-08-28 09:35:47 +02:00
Francois-Xavier Coudert e84f122fcc re PR libfortran/45436 (Failed to bootstrap)
PR fortran/45436
	* trans-types.c (gfc_init_kinds): Disable TFmode.

From-SVN: r163611
2010-08-28 07:35:10 +00:00
Xinliang David Li f06e400fc3 Fix PR45422
From-SVN: r163610
2010-08-28 05:54:54 +00:00
Nathan Froyd b64336b8b7 sh-protos.h (sh_function_arg): Delete.
* config/sh/sh-protos.h (sh_function_arg): Delete.
	(sh_function_arg_advance): Delete.
	* config/sh/sh.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
	(PASS_IN_REG_P): Eliminate cast.
	* config/sh/sh.c (sh_function_arg_advance): Make static.  Take a
	const_tree and a bool.
	(sh_function_arg): Likewise.
	(sh_output_mi_thunk): Call sh_function_arg_advance) and
	sh_function_arg.
	(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.

From-SVN: r163607
2010-08-28 01:23:19 +00:00
GCC Administrator 79ad70f993 Daily bump.
From-SVN: r163606
2010-08-28 00:19:12 +00:00
Naveen H.S 91a19652f8 sh.c (push_regs): Emit movml for interrupt handler when possible.
* config/sh/sh.c (push_regs): Emit movml for interrupt handler
	when possible.
	(sh_expand_epilogue): Likewise.
	* config/sh/sh.md (movml_push_banked): New insn.
	(movml_pop_banked): Likewise.
	* gcc.dg/attr-isr.c: Skip test for -m2a.  Don't	run on sh2a*-*-*.


Co-Authored-By: Kaz Kojima <kkojima@gcc.gnu.org>

From-SVN: r163602
2010-08-27 23:29:41 +00:00
Bernd Schmidt f8045c4158 vfp.md (arm_movsi_vfp, [...]): Set attribute "insn".
* config/arm/vfp.md (arm_movsi_vfp, thumb2_movsi_vfp, movsf_vfp,
	thumb2_movsf_vfp): Set attribute "insn".
	* config/arm/arm.md (arm_ashrdi3_1bit, arm_lshrdi3_1bit, not_shiftsi,
	not_shiftsi_compare0, not_shiftsi_compare0_scratch, arm_one_cmplsi2,
	thumb1_one_cmplsi2, notsi_compare0, notsi_compare0_scratch,
	arm_zero_extendsidi2, arm_extendsidi2, thumb1_movdi_insn,
	arm_movsi_insn, movhi_insn_arch4, movhi_bytes, arm_movqi_insn,
	thumb1_movqi_insn arm32_movhf, thumb1_movhf, arm_movsf_soft_insn,
	thumb1_movsf_insn, thumb_movdf_insn, mov_scc, mov_negscc, mov_notscc,
	movsicc_insn, movsfcc_soft_insn, and_scc, cond_move, if_move_not,
	if_not_move, if_shift_move, if_move_shift, if_shift_shift,
	if_not_arith, if_arith_not, cond_move_not): Likewise.

From-SVN: r163601
2010-08-27 22:11:50 +00:00
Bernd Schmidt c1cb371a2f genautomata.c (gen_regexp_repeat, [...]): Use the string found in vector element 0 rather than the original string when...
* genautomata.c (gen_regexp_repeat, gen_regexp_allof,
	gen_regexp_oneof, gen_regexp_sequence): Use the string found
	in vector element 0 rather than the original string when there's
	only one element.
	(gen_regexp): Remove extra semicolon.

From-SVN: r163600
2010-08-27 22:08:37 +00:00
Janus Weil b052cbd0cd re PR fortran/45432 (gfortran.dg/allocate_alloc_opt_9.f90: Segfault due to invalid FREE)
2010-08-27  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/45432
	* match.c (gfc_match_allocate): Avoid double free on error.

From-SVN: r163599
2010-08-27 23:50:47 +02:00
Michael Meissner 7042fe5ef8 Improve floating point conversions on powerpc
From-SVN: r163598
2010-08-27 21:32:44 +00:00
Francois-Xavier Coudert a3c85b7499 re PR fortran/32049 (Support on x86_64 also kind=16)
PR fortran/32049

	* gfortran.h (gfc_real_info): Add c_float128 field.
	* mathbuiltins.def: Indicate which builtins are const.
	* trans-types.h (float128_type_node, complex_float128_type_node,
	gfc_real16_is_float128): New variables.
	* trans-types.c (float128_type_node, complex_float128_type_node,
	gfc_real16_is_float128): New variables.
	(gfc_init_kinds): Allow TFmode.
	(gfc_build_real_type): Mark __float128 types as such.
	(gfc_init_types): Initialize float128_type_node and
	complex_float128_type_node
	* f95-lang.c (gfc_init_builtin_functions): Adjust for new
	argument of OTHER_BUILTIN macro.
	* trans-intrinsic.c (gfc_intrinsic_map_t): Likewise.
	(builtin_decl_for_precision): Special case for __float128.
	(builtin_decl_for_float_kind): Likewise.
	(define_quad_builtin): New function.
	(gfc_build_intrinsic_lib_fndecls): Create all __float128
	library decls if necessary. Store them in the real16_decl and
	complex16_decl builtin map fields.
	(gfc_get_intrinsic_lib_fndecl): Handle q-suffixed __float128
	library function names.

	* gfortran.dg/random_seed_1.f90: Adjust test.
	* gfortran.dg/float128_1.f90: New test.

From-SVN: r163597
2010-08-27 21:24:13 +00:00
Basile Starynkevitch 6ba2db5e33 gengtype.c (output_type_enum): Test the right union member.
2010-08-27  Basile Starynkevitch  <basile@starynkevitch.net>
            Jeremie Salvucci  <jeremie.salvucci@free.fr>

        * gengtype.c (output_type_enum): Test the right union member.


Co-Authored-By: Jeremie Salvucci <jeremie.salvucci@free.fr>

From-SVN: r163596
2010-08-27 20:32:27 +00:00
Tobias Burnus 0cd0559e8c re PR fortran/33197 (Fortran 2008: math functions)
gcc/fortran/
2010-08-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/33197
        * gcc/fortran/intrinsic.c (add_functions): Add norm2 and parity.
        * gcc/fortran/intrinsic.h (gfc_check_norm2, gfc_check_parity):
        gfc_simplify_norm2, gfc_simplify_parity, gfc_resolve_norm2,
        gfc_resolve_parity): New prototypes.
        * gcc/fortran/gfortran.h (gfc_isym_id): New enum items
        GFC_ISYM_NORM2 and GFC_ISYM_PARITY.
        * gcc/fortran/iresolve.c (gfc_resolve_norm2,
        gfc_resolve_parity): New functions.
        * gcc/fortran/check.c (gfc_check_norm2, gfc_check_parity):
        New functions.
        * gcc/fortran/trans-intrinsic.c (gfc_conv_intrinsic_arith,
        gfc_conv_intrinsic_function): Handle NORM2 and PARITY.
        * gcc/fortran/intrinsic.texi (NORM2, PARITY): Add.
        * gcc/fortran/simplify.c (simplify_transformation_to_array):
        Add post-processing opterator.
        (gfc_simplify_all, gfc_simplify_any, gfc_simplify_count,
        gfc_simplify_product, gfc_simplify_sum): Update call.
        (add_squared, do_sqrt, gfc_simplify_norm2, do_xor,
        gfc_simplify_parity): New functions.

gcc/testsuite/
2010-08-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/33197
        * gcc/testsuite/gfortran.dg/norm2_1.f90: New.
        * gcc/testsuite/gfortran.dg/norm2_2.f90: New.
        * gcc/testsuite/gfortran.dg/norm2_3.f90: New.
        * gcc/testsuite/gfortran.dg/norm2_4.f90: New.
        * gcc/testsuite/gfortran.dg/parity_1.f90: New.
        * gcc/testsuite/gfortran.dg/parity_2.f90: New.
        * gcc/testsuite/gfortran.dg/parity_3.f90: New.

libgfortran/
2010-08-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/33197
        * libgfortran/m4/ifunction.m4 (FINISH_ARRAY_FUNCTION,
        ARRAY_FUNCTION): Allow expression after loop.
        * libgfortran/m4/norm2.m4: New for _gfortran_norm2_r{4,8,10,16}.
        * libgfortran/m4/parity.m4: New for
        * _gfortran_parity_l{1,2,4,8,16}.
        * libgfortran/gfortran.map: Add new functions.
        * libgfortran/Makefile.am: Ditto.
        * libgfortran/m4/minloc1.m4: Add empty argument for
        * ARRAY_FUNCTION.
        * libgfortran/m4/maxloc1.m4: Ditto.
        * libgfortran/m4/all.m4: Ditto.
        * libgfortran/m4/minval.m4: Ditto.
        * libgfortran/m4/maxval.m4: Ditto.
        * libgfortran/m4/count.m4: Ditto.
        * libgfortran/m4/product.m4: Ditto.
        * libgfortran/m4/any.m4: Ditto.
        * Makefile.in: Regenerated.
        * generated/minval_r8.c: Regenerated.
        * generated/maxloc1_4_r8.c: Regenerated.
        * generated/minloc1_16_r16.c: Regenerated.
        * generated/norm2_r4.c: Regenerated.
        * generated/sum_i8.c: Regenerated.
        * generated/parity_l2.c: Regenerated.
        * generated/any_l16.c: Regenerated.
        * generated/maxval_i2.c: Regenerated.
        * generated/any_l2.c: Regenerated.
        * generated/product_r4.c: Regenerated.
        * generated/maxloc1_8_i4.c: Regenerated.
        * generated/parity_l16.c: Regenerated.
        * generated/all_l1.c: Regenerated.
        * generated/product_i2.c: Regenerated.
        * generated/minloc1_8_r16.c: Regenerated.
        * generated/maxloc1_8_r16.c: Regenerated.
        * generated/sum_r16.c: Regenerated.
        * generated/sum_i1.c: Regenerated.
        * generated/minloc1_4_r8.c: Regenerated.
        * generated/maxloc1_16_r16.c: Regenerated.
        * generated/minloc1_16_i4.c: Regenerated.
        * generated/maxloc1_16_i4.c: Regenerated.
        * generated/maxval_r16.c: Regenerated.
        * generated/product_c10.c: Regenerated.
        * generated/minloc1_8_i4.c: Regenerated.
        * generated/all_l2.c: Regenerated.
        * generated/product_c4.c: Regenerated.
        * generated/sum_r4.c: Regenerated.
        * generated/all_l16.c: Regenerated.
        * generated/minloc1_16_r10.c: Regenerated.
        * generated/sum_i2.c: Regenerated.
        * generated/maxloc1_8_r8.c: Regenerated.
        * generated/minval_i16.c: Regenerated.
        * generated/parity_l4.c: Regenerated.
        * generated/maxval_i4.c: Regenerated.
        * generated/any_l4.c: Regenerated.
        * generated/minval_i8.c: Regenerated.
        * generated/maxloc1_4_i8.c: Regenerated.
        * generated/minloc1_4_i16.c: Regenerated.
        * generated/maxloc1_4_i16.c: Regenerated.
        * generated/minloc1_8_r10.c: Regenerated.
        * generated/product_i4.c: Regenerated.
        * generated/maxloc1_8_r10.c: Regenerated.
        * generated/sum_c16.c: Regenerated.
        * generated/minloc1_16_r8.c: Regenerated.
        * generated/maxloc1_16_r8.c: Regenerated.
        * generated/count_4_l.c: Regenerated.
        * generated/sum_r10.c: Regenerated.
        * generated/count_8_l.c: Regenerated.
        * generated/sum_c4.c: Regenerated.
        * generated/maxloc1_16_r10.c: Regenerated.
        * generated/minloc1_8_r8.c: Regenerated.
        * generated/maxval_r10.c: Regenerated.
        * generated/minval_i1.c: Regenerated.
        * generated/maxloc1_4_i1.c: Regenerated.
        * generated/minloc1_4_i8.c: Regenerated.
        * generated/product_i16.c: Regenerated.
        * generated/all_l4.c: Regenerated.
        * generated/norm2_r16.c: Regenerated.
        * generated/minval_r4.c: Regenerated.
        * generated/maxloc1_4_r4.c: Regenerated.
        * generated/sum_i4.c: Regenerated.
        * generated/maxval_r8.c: Regenerated.
        * generated/norm2_r8.c: Regenerated.
        * generated/minloc1_4_i1.c: Regenerated.
        * generated/minval_r16.c: Regenerated.
        * generated/minval_i2.c: Regenerated.
        * generated/maxloc1_4_i2.c: Regenerated.
        * generated/product_r8.c: Regenerated.
        * generated/maxloc1_8_i8.c: Regenerated.
        * generated/sum_c10.c: Regenerated.
        * generated/minloc1_4_r16.c: Regenerated.
        * generated/maxloc1_4_r16.c: Regenerated.
        * generated/count_1_l.c: Regenerated.
        * generated/minloc1_4_r4.c: Regenerated.
        * generated/minloc1_16_i8.c: Regenerated.
        * generated/maxloc1_16_i8.c: Regenerated.
        * generated/minloc1_4_i2.c: Regenerated.
        * generated/maxloc1_8_i1.c: Regenerated.
        * generated/minloc1_8_i8.c: Regenerated.
        * generated/product_r16.c: Regenerated.
        * generated/product_c8.c: Regenerated.
        * generated/sum_r8.c: Regenerated.
        * generated/norm2_r10.c: Regenerated.
        * generated/minloc1_16_i16.c: Regenerated.
        * generated/maxloc1_8_r4.c: Regenerated.
        * generated/minloc1_16_i1.c: Regenerated.
        * generated/maxloc1_16_i1.c: Regenerated.
        * generated/minval_r10.c: Regenerated.
        * generated/count_16_l.c: Regenerated.
        * generated/parity_l8.c: Regenerated.
        * generated/minloc1_8_i1.c: Regenerated.
        * generated/minval_i4.c: Regenerated.
        * generated/maxloc1_4_i4.c: Regenerated.
        * generated/maxloc1_8_i2.c: Regenerated.
        * generated/maxval_i8.c: Regenerated.
        * generated/any_l8.c: Regenerated.
        * generated/minloc1_4_r10.c: Regenerated.
        * generated/minloc1_8_i16.c: Regenerated.
        * generated/maxloc1_4_r10.c: Regenerated.
        * generated/maxloc1_8_i16.c: Regenerated.
        * generated/minloc1_16_r4.c: Regenerated.
        * generated/maxloc1_16_r4.c: Regenerated.
        * generated/product_i8.c: Regenerated.
        * generated/sum_i16.c: Regenerated.
        * generated/count_2_l.c: Regenerated.
        * generated/maxloc1_16_i16.c: Regenerated.
        * generated/minloc1_8_r4.c: Regenerated.
        * generated/sum_c8.c: Regenerated.
        * generated/minloc1_16_i2.c: Regenerated.
        * generated/maxloc1_16_i2.c: Regenerated.
        * generated/parity_l1.c: Regenerated.
        * generated/maxval_i16.c: Regenerated.
        * generated/maxval_i1.c: Regenerated.
        * generated/minloc1_4_i4.c: Regenerated.
        * generated/any_l1.c: Regenerated.
        * generated/minloc1_8_i2.c: Regenerated.
        * generated/product_c16.c: Regenerated.
        * generated/product_r10.c: Regenerated.
        * generated/product_i1.c: Regenerated.
        * generated/all_l8.c: Regenerated.
        * generated/maxval_r4.c: Regenerated.

From-SVN: r163595
2010-08-27 21:17:45 +02:00
Janus Weil cbadd64af4 re PR fortran/45420 ([OOP] polymorphic TBP call in a CLASS DEFAULT clause)
2010-08-27  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/45420
	* match.c (select_type_set_tmp): Add the possibility to reset the
	temporary to NULL.
	(gfc_match_class_is): Reset the temporary in CLASS DEFAULT clauses.


2010-08-27  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/45420
	* gfortran.dg/select_type_15.f03: New.

From-SVN: r163594
2010-08-27 21:02:15 +02:00
Benjamin Kosnik ee1e5e63ec stl_iterator_base_types.h: Fix doxygen warning.
2010-08-26  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/stl_iterator_base_types.h: Fix doxygen warning.

From-SVN: r163592
2010-08-27 18:16:05 +00:00
Uros Bizjak 83d5896129 re PR target/41484 (Please add memory forms of pmovzx* (SSE4.1))
PR target/41484
	* config/i386/sse.md (sse4_1_extendv8qiv8hi2): Also accept memory
	operands for operand 1.
	(sse4_1_extendv4qiv4si2): Ditto.
	(sse4_1_extendv2qiv2di2): Ditto.
	(sse4_1_extendv4hiv4si2): Ditto.
	(sse4_1_extendv2hiv2di2): Ditto.
	(sse4_1_extendv2siv2di2): Ditto.
	(sse4_1_zero_extendv8qiv8hi2): Ditto.
	(sse4_1_zero_extendv4qiv4si2): Ditto.
	(sse4_1_zero_extendv2qiv2di2): Ditto.
	(sse4_1_zero_extendv4hiv4si2): Ditto.
	(sse4_1_zero_extendv2hiv2di2): Ditto.
	(sse4_1_zero_extendv2siv2di2): Ditto.
	(*sse4_1_extendv8qiv8hi2): Remove insn pattern.
	(*sse4_1_extendv4qiv4si2): Ditto.
	(*sse4_1_extendv2qiv2di2): Ditto.
	(*sse4_1_extendv4hiv4si2): Ditto.
	(*sse4_1_extendv2hiv2di2): Ditto.
	(*sse4_1_extendv2siv2di2): Ditto.
	(*sse4_1_zero_extendv8qiv8hi2): Ditto.
	(*sse4_1_zero_extendv4qiv4si2): Ditto.
	(*sse4_1_zero_extendv2qiv2di2): Ditto.
	(*sse4_1_zero_extendv4hiv4si2): Ditto.
	(*sse4_1_zero_extendv2hiv2di2): Ditto.
	(*sse4_1_zero_extendv2siv2di2): Ditto.

From-SVN: r163591
2010-08-27 18:53:51 +02:00
Eric Botcazou 757fc8ed22 Fix long lines
From-SVN: r163590
2010-08-27 16:23:07 +00:00
Jerry DeLisle 2854a076f6 re PR fortran/43217 (Output of Hollerith constants which are not a multiple of 4 bytes)
2010-08-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/43217
	* gfortran.dg/hollerith8.f90: New test.

From-SVN: r163588
2010-08-27 15:00:11 +00:00
Nathan Froyd c8717ea3bc mips-protos.h (mips_function_arg_advance): Delete
* config/mips/mips-protos.h (mips_function_arg_advance): Delete
	(mips_function_arg): Delete.
	(mips_function_arg_boundary): Take a const_tree.
	* config/mips/mips.c (mips_function_arg_boundary): Likewise.
	(mips_arg_info): Likewise.
	(mips_setup_incoming_varargs): Call mips_function_arg_advance
	instead of FUNCTION_ARG_ADVANCE.
	(mips_function_arg_advance): Adjust prototype.  Make static.
	(mips_function_arg): Likewise.
	(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
	* config/mips/mips.h (FUNCTION_ARG_ADVANCE, FUNCTION_ARG): Delete.

From-SVN: r163587
2010-08-27 14:48:16 +00:00
Nathan Froyd 7c8232a2e9 rs6000.h (FUNCTION_ARG, [...]): Delete.
* config/rs6000/rs6000.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
	* config/rs6000/rs6000-protos.h (function_arg_advance): Delete.
	(function_arg): Delete.
	(function_arg_boundary): Take a const_tree.
	* config/rs6000/rs6000.c (function_arg_boundary): Likewise.
	(rs6000_spe_function_arg): Likewise.
	(rs6000_parm_start): Likewise.
	(rs6000_arg_size): Likewise.
	(rs6000_darwin64_record_arg_advance_recurse): Likewise.
	(rs6000_darwin64_record_arg): Likewise.  Take a bool instead of
	an int.
	(rs6000_mixed_function_arg): Likewise.
	(function_arg): Rename to...
	(rs6000_function_arg): ...this.
	(function_arg_advance): Rename to...
	(rs6000_function_arg_advance_1): ...this
	(rs6000_function_arg_advance): New function.  Call it.
	(setup_incoming_varargs): Call rs6000_function_arg_advance_1.
	(rs6000_return_in_memory): Adjust call to rs6000_darwin64_record_arg.
	(rs6000_function_value): Likewise.
	(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.

From-SVN: r163586
2010-08-27 14:46:22 +00:00
Ramana Radhakrishnan da787decc6 arm.md (enabled): Test the value of arch_enabled rather than just using it.
2010-08-27  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

	* config/arm/arm.md (enabled): Test the value of arch_enabled
        rather than just using it.

From-SVN: r163585
2010-08-27 14:22:41 +00:00
Thomas Koenig e240f0f4cc re PR fortran/45159 (Unnecessary temporaries)
2010-08-27  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/45159
	* dependency.c (check_section_vs_section):  Single test for
	identical strides which takes into account that only one
	of the strides may be NULL.

2010-08-27  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/45159
	* gfortran.dg/dependency_33.f90:  New test.

From-SVN: r163584
2010-08-27 12:08:47 +00:00
Richard Guenther 6d446ecf60 scop-1.c: Fix out-of-bound array accesses.
2010-08-27  Richard Guenther  <rguenther@suse.de>

	* gcc.dg/graphite/scop-1.c: Fix out-of-bound array accesses.
	* gcc.dg/graphite/scop-2.c: Likewise.
	* gcc.dg/graphite/scop-20.c: Likewise.
	* gcc.dg/vect/slp-25.c: Likewise.

From-SVN: r163583
2010-08-27 11:39:45 +00:00
Olivier Hainque d32f725a65 dse.c (group_info.base_mem, [...]): Use BLKmode to cover all the possible offsets from this base.
* dse.c (group_info.base_mem, get_group_info): Use BLKmode to
        cover all the possible offsets from this base.
        (scan_reads_nospill): Pass base_mem's mode to canon_true_dependence.

        testsuite/
        * gnat.dg/dse_step.ads, dse_step.adb, test_dse_step.adb: New test.


Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>

From-SVN: r163582
2010-08-27 10:48:32 +00:00
Jerry DeLisle 401fcd3b8f re PR fortran/43217 (Output of Hollerith constants which are not a multiple of 4 bytes)
2010-08-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/43217
	* primary.c (match_hollerith_constant): Calculate padding needed to
	fill default integer and allocate string for that size.  Set pad bytes
	to ' '.
	* gfortran.h: Add hollerith pad value to type spec union.
	* data.c (create_character_initializer): Fix spelling of function name.
	Use hollerith pad value to calculate length.
	* arith.c (hollerith2representation); Use hollerith pad value to
	calculate length.

From-SVN: r163581
2010-08-27 06:50:03 +00:00
Dmitrijs Ledkovs 9f8f1def9d Fix building ecjx in cross compile mode.
libjava/:
	PR libgcj/40868
	* configure.ac: Add GCC_FOR_ECJX variable.  Ensure
	GCJ_FOR_ECJX is always set.
	* Makefile.am [!NATIVE] (ecjx.$(OBJEXT)): New rule.
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* gcj/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

Co-Authored-By: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>

From-SVN: r163580
2010-08-27 04:27:40 +00:00
GCC Administrator a703b0c023 Daily bump.
From-SVN: r163579
2010-08-27 00:17:31 +00:00
Daniel Kraft 3e78238a1e re PR fortran/38936 ([F03] ASSOCIATE construct / improved SELECT TYPE (a=>expr))
2010-08-26  Daniel Kraft  <d@domob.eu>

	PR fortran/38936
	PR fortran/44047
	PR fortran/45384
	* gfortran.h (struct gfc_association_list): New flag `dangling'.
	(gfc_build_block_ns): Declared here...
	* parse.h (gfc_build_block_ns): ...instead of here.
	* trans.h (gfc_process_block_locals): Expect additionally the
	gfc_association_list of BLOCK (if present).
	* match.c (select_type_set_tmp): Create sym->assoc for temporary.
	* resolve.c (resolve_variable): Only check for invalid *array*
	references on associate-names.
	(resolve_assoc_var): New method with code previously in resolve_symbol.
	(resolve_select_type): Use association to give the selector and
	temporaries their values instead of ordinary assignment.
	(resolve_fl_var_and_proc): Allow CLASS associate-names.
	(resolve_symbol): Use new `resolve_assoc_var' instead of inlining here.
	* trans-stmt.c (gfc_trans_block_construct): Pass association-list
	to `gfc_process_block_locals' to match new interface.
	* trans-decl.c (gfc_get_symbol_decl): Don't defer associate-names
	here automatically.
	(gfc_process_block_locals): Defer them rather here when linked to
	from the BLOCK's association list.

2010-08-26  Daniel Kraft  <d@domob.eu>

	PR fortran/38936
	PR fortran/44047
	PR fortran/45384
	* gfortran.dg/associate_8.f03: New test.
	* gfortran.dg/select_type_13.f03: New test.
	* gfortran.dg/select_type_14.f03: New test.

From-SVN: r163572
2010-08-26 21:48:43 +02:00
Rainer Orth 707bcb7ae4 * system.h [HAVE_INTTYPES_H]: Include inttypes.h.
From-SVN: r163569
2010-08-26 17:58:31 +00:00
Jakub Jelinek 9e3920e97f re PR tree-optimization/44485 (ICE in get_expr_operands, at tree-ssa-operands.c:1020)
PR tree-optimization/44485
	* calls.c (flags_from_decl_or_type): For const or pure
	noreturn functions return ECF_LOOPING_CONST_OR_PURE|ECF_NORETURN
	together with ECF_CONST resp. ECF_PURE.
	* builtins.c (expand_builtin): Use flags_from_decl_or_type
	instead of querying flags directly.
	* tree-ssa-loop-niter.c (finite_loop_p): Likewise.
	* tree-ssa-dce.c (find_obviously_necessary_stmts): Likewise.

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

From-SVN: r163568
2010-08-26 18:39:26 +02:00
Rainer Orth 350b707024 thr-init-2.c: Use dg-add-options tls.
* gcc.dg/tls/thr-init-2.c: Use dg-add-options tls.
	* gcc.dg/torture/tls/thr-init-1.c: Likewise.
	* gcc.dg/torture/tls/thr-init-2.c: Likewise.

From-SVN: r163567
2010-08-26 15:52:41 +00:00
Rainer Orth 7b4588decd fpu-387.h (has_sse): Remove cw_sse, unused.
* config/fpu-387.h (has_sse): Remove cw_sse, unused.
	Use fixed-length asm.

From-SVN: r163566
2010-08-26 15:29:31 +00:00
Richard Guenther 4be4cd6dd7 re PR tree-optimization/45255 (internal compiler error: verify_stmts failed with -fwhopr)
2010-08-26  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/45255
	* tree.c (decl_address_invariant_p): DECL_DLLIMPORT_P
	statics and externals are also invariant.

From-SVN: r163565
2010-08-26 14:20:45 +00:00
Richard Guenther 5423ab77ff scop-0.c: Fix out-of-bound array accesses.
2010-08-26  Richard Guenther  <rguenther@suse.de>

	* gcc.dg/graphite/scop-0.c: Fix out-of-bound array accesses.
	* gcc.dg/graphite/scop-21.c: Likewise.

From-SVN: r163564
2010-08-26 13:10:15 +00:00
Richard Guenther 880f987ea7 vect-64.c: Fix out-of-bound array accesses.
2010-08-26  Richard Guenther  <rguenther@suse.de>

	* gcc.dg/vect/vect-64.c: Fix out-of-bound array accesses.
	* gcc.dg/vect/fast-math-slp-27.c: Likewise.
	* gcc.dg/vect/no-section-anchors-vect-64.c: Likewise.
	* gcc.dg/vect/vect-91.c: Likewise.
	* gcc.dg/vect/vect-peel-1.c: Likewise.
	* gcc.dg/vect/vect-peel-2.c: Likewise.
	* gcc.dg/vect/vect-peel-4.c: Likewise.

From-SVN: r163563
2010-08-26 11:13:58 +00:00
Jerry DeLisle 604bbfb7fa re PR fortran/41859 (ICE on invalid expression involving DT with pointer components in I/O)
2010-08-25  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/41859
	* gfortran.dg/der_io_4.f90: New test.

From-SVN: r163561
2010-08-26 02:12:49 +00:00
GCC Administrator 1972b91628 Daily bump.
From-SVN: r163560
2010-08-26 00:16:50 +00:00
Jakub Jelinek ea9f1d6fe5 re PR rtl-optimization/44858 (likely integer wrong code bug)
PR rtl-optimization/44858
	* combine.c (try_combine): If recog_for_combine added CLOBBERs to
	newi2pat, make sure they don't affect newpat.

	* gcc.c-torture/execute/pr44858.c: New test.

From-SVN: r163552
2010-08-25 19:50:59 +02:00
Jakub Jelinek 932c9bffa0 re PR rtl-optimization/45400 (XBMC AudioEngine Compilation C++ Internal Compiler Error /w Optimization)
PR rtl-optimization/45400
	* combine.c (simplify_shift_const_1) <case SUBREG>: Only use
	SUBREG_REG if both modes are of MODE_INT class.

	* g++.dg/other/i386-8.C: New test.

From-SVN: r163551
2010-08-25 19:49:26 +02:00
Julian Brown d8099dd859 arm.c (arm_issue_rate): Return 2 for Cortex-A5.
* config/arm/arm.c (arm_issue_rate): Return 2 for Cortex-A5.
	* config/arm/arm.md (generic_sched): No for Cortex-A5.
	(generic_vfp): Likewise.
	(cortex-a5.md): Include.
	* config/arm/cortex-a5.md: New.

From-SVN: r163550
2010-08-25 15:35:24 +00:00
Richard Guenther 0ceb020134 alias.c (get_alias_set): Assign a single alias-set to all pointers.
2010-08-25  Richard Guenther  <rguenther@suse.de>

	* alias.c (get_alias_set): Assign a single alias-set to
	all pointers.
	* gimple.c (gimple_get_alias_set): Remove special handling
	for pointers.

	c-family/
	* c-common.c (c_common_get_alias_set): Remove special
	handling for pointers.

	* gcc.dg/alias-8.c: Adjust.

From-SVN: r163549
2010-08-25 14:46:40 +00:00
Jakub Jelinek 22b139e167 trans-decl.c (gfc_build_intrinsic_function_decls): Set TREE_NOTHROW on fndecls that can't throw.
* trans-decl.c (gfc_build_intrinsic_function_decls): Set
	TREE_NOTHROW on fndecls that can't throw.  Set
	TREE_READONLY on gfor_fndecl_math_ishftc{4,8,16}.
	(gfc_build_builtin_function_decls): Set TREE_NOTHROW on
	gfor_fndecl_associated.

From-SVN: r163548
2010-08-25 16:44:46 +02:00
Bernd Schmidt 0cdf7b49f1 combine.c (find_split_point): Undo canonicalization of multiply-add to (minus x (mult)) when...
* combine.c (find_split_point): Undo canonicalization of multiply-add
	to (minus x (mult)) when it seems likely that this will increase the
	chances of a split.

	* gcc.target/i386/combine-mul.c: New test.

From-SVN: r163547
2010-08-25 14:14:59 +00:00