[PATCH] Fix more type problems
Richard Guenther
rguenther@suse.de
Fri Sep 12 08:58:00 GMT 2008
This fixes some more problems I noticed.
Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk.
Richard.
2008-09-11 Richard Guenther <rguenther@suse.de>
* tree-vrp.c (simplify_truth_ops_using_ranges): Fix types.
fortran/
* trans-intrinsic.c (gfc_conv_intrinsic_transfer): Use
build_fold_addr_expr to properly mark the argument
addressable.
Index: trunk/gcc/fortran/trans-intrinsic.c
===================================================================
*** trunk.orig/gcc/fortran/trans-intrinsic.c
--- trunk/gcc/fortran/trans-intrinsic.c
*************** gfc_conv_intrinsic_transfer (gfc_se * se
*** 3718,3724 ****
moldsize = size_in_bytes (type);
/* Use memcpy to do the transfer. */
! tmp = fold_build1 (ADDR_EXPR, build_pointer_type (type), tmpdecl);
tmp = build_call_expr (built_in_decls[BUILT_IN_MEMCPY], 3,
fold_convert (pvoid_type_node, tmp),
fold_convert (pvoid_type_node, ptr),
--- 3718,3724 ----
moldsize = size_in_bytes (type);
/* Use memcpy to do the transfer. */
! tmp = build_fold_addr_expr (tmpdecl);
tmp = build_call_expr (built_in_decls[BUILT_IN_MEMCPY], 3,
fold_convert (pvoid_type_node, tmp),
fold_convert (pvoid_type_node, ptr),
Index: trunk/gcc/tree-vrp.c
===================================================================
*** trunk.orig/gcc/tree-vrp.c
--- trunk/gcc/tree-vrp.c
*************** simplify_truth_ops_using_ranges (gimple_
*** 6319,6327 ****
if (rhs_code == TRUTH_NOT_EXPR)
{
rhs_code = NE_EXPR;
! op1 = integer_one_node;
}
-
else
{
op1 = gimple_assign_rhs2 (stmt);
--- 6319,6326 ----
if (rhs_code == TRUTH_NOT_EXPR)
{
rhs_code = NE_EXPR;
! op1 = build_int_cst (TREE_TYPE (op0), 1);
}
else
{
op1 = gimple_assign_rhs2 (stmt);
More information about the Fortran
mailing list