This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[tuples] fix copy_bb and boostrap c++


This fixes the BB copier, my C++ failure, *and* we can now bootstrap
C and C++ with no regressions.  On to analyzing memory usage...

Aldy

        tree-inline.c (copy_bb): Check for GIMPLE_MODIFY_STMT, and adjust
        accordingly.

Index: tree-inline.c
===================================================================
--- tree-inline.c       (revision 117573)
+++ tree-inline.c       (working copy)
@@ -709,9 +709,9 @@ copy_bb (copy_body_data *id, basic_block

          /* With return slot optimization we can end up with
             non-gimple (foo *)&this->m, fix that here.  */
-         if (TREE_CODE (stmt) == MODIFY_EXPR
-             && TREE_CODE (TREE_OPERAND (stmt, 1)) == NOP_EXPR
-             && !is_gimple_val (TREE_OPERAND (TREE_OPERAND (stmt, 1), 0)))
+         if (TREE_CODE (stmt) == GIMPLE_MODIFY_STMT
+             && TREE_CODE (GIMPLE_STMT_OPERAND (stmt, 1)) == NOP_EXPR
+             && !is_gimple_val (TREE_OPERAND (GIMPLE_STMT_OPERAND (stmt, 1), 0)))
            gimplify_stmt (&stmt);

           bsi_insert_after (&copy_bsi, stmt, BSI_NEW_STMT);


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]