From: Richard Guenther Date: Thu, 9 Jun 2011 12:17:17 +0000 (+0000) Subject: trans.c (gfc_allocate_array_with_status): Mark error path as unlikely. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=9ef0b98eb62b22e291e4cca4537d64ea2b795c14;p=gcc.git trans.c (gfc_allocate_array_with_status): Mark error path as unlikely. 2011-06-09 Richard Guenther * trans.c (gfc_allocate_array_with_status): Mark error path as unlikely. From-SVN: r174842 --- diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index c77c6edfdb6..dad51bf1a22 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2011-06-09 Richard Guenther + + * trans.c (gfc_allocate_array_with_status): Mark error path + as unlikely. + 2011-06-08 Tobias Burnus PR fortran/18918 diff --git a/gcc/fortran/trans.c b/gcc/fortran/trans.c index f2f13525b39..ee35387a7d9 100644 --- a/gcc/fortran/trans.c +++ b/gcc/fortran/trans.c @@ -697,8 +697,9 @@ gfc_allocate_array_with_status (stmtblock_t * block, tree mem, tree size, /* Create a variable to hold the result. */ res = gfc_create_var (type, NULL); - null_mem = fold_build2_loc (input_location, EQ_EXPR, boolean_type_node, mem, - build_int_cst (type, 0)); + null_mem = gfc_unlikely (fold_build2_loc (input_location, NE_EXPR, + boolean_type_node, mem, + build_int_cst (type, 0))); /* If mem is NULL, we call gfc_allocate_with_status. */ gfc_start_block (&alloc_block); @@ -751,7 +752,7 @@ gfc_allocate_array_with_status (stmtblock_t * block, tree mem, tree size, } tmp = fold_build3_loc (input_location, COND_EXPR, void_type_node, null_mem, - alloc, error); + error, alloc); gfc_add_expr_to_block (block, tmp); return res;