From patchwork Thu Dec 24 00:47:27 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Henderson X-Patchwork-Id: 560772 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id AE78B140BA2 for ; Thu, 24 Dec 2015 11:48:14 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.b=CE4MbrHA; dkim-atps=neutral DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:subject:date:message-id; q=dns; s=default; b=YY658CUNQDUXFZD 0nyrXBjulhj33eJVswZZK7LVDYMHva8fqpLx2T4P7huB+//2EzqMSHWaAf8LzJUT CFu+CA8UrgK+QqS7Z1m5l4Txaslc5eoZr+PQbjFToSrRruJm4iibATfPZcP8RAWW MF9vJUCe+KRN7a0HRL6g64jLrF0g= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:subject:date:message-id; s=default; bh=hq9sAS6Qd3Fd6ms0D9lXb MO1YhA=; b=CE4MbrHAdUfCVuCxtvyGXJSLZmkEUSqzr8J+b2qMj7KZqeFqjFCU6 PNyPzbXbCsHXsDPEN6DpKBHnIS5t10rYaNJakpWWgmPNqg1ZfvjEvIUjOp88f41G JpUGGIhTMgW/QBDczNHCefHEizsU1mRszawEtLzISIa257y0Y/COHY= Received: (qmail 32505 invoked by alias); 24 Dec 2015 00:48:05 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 32489 invoked by uid 89); 24 Dec 2015 00:48:04 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.2 required=5.0 tests=AWL, BAYES_00, FREEMAIL_ENVFROM_END_DIGIT, FREEMAIL_FROM, RCVD_IN_DNSWL_LOW, SPF_PASS autolearn=ham version=3.3.2 spammy= X-HELO: mail-qk0-f174.google.com Received: from mail-qk0-f174.google.com (HELO mail-qk0-f174.google.com) (209.85.220.174) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-GCM-SHA256 encrypted) ESMTPS; Thu, 24 Dec 2015 00:48:03 +0000 Received: by mail-qk0-f174.google.com with SMTP id k189so166410151qkc.0 for ; Wed, 23 Dec 2015 16:48:03 -0800 (PST) X-Received: by 10.55.22.29 with SMTP id g29mr44294205qkh.100.1450918080939; Wed, 23 Dec 2015 16:48:00 -0800 (PST) Received: from bigtime.com (50-194-63-110-static.hfc.comcastbusiness.net. [50.194.63.110]) by smtp.gmail.com with ESMTPSA id c7sm321360qkb.38.2015.12.23.16.47.58 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 23 Dec 2015 16:47:59 -0800 (PST) From: Richard Henderson To: gcc-patches@gcc.gnu.org Subject: PR ipa/67811, part 2 Date: Wed, 23 Dec 2015 16:47:27 -0800 Message-Id: <1450918047-11705-1-git-send-email-rth@redhat.com> X-IsSubscribed: yes Mea culpa. Somehow I diffed the wrong trees and missed a regression in libitm.c/cancel.c. Re-tested and committed. r~ * tree-cfg.c (make_edges_bb): Add abort edge for outer transactions. diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c index 436ea14..3b2fab5 100644 --- a/gcc/tree-cfg.c +++ b/gcc/tree-cfg.c @@ -839,7 +839,8 @@ make_edges_bb (basic_block bb, struct omp_region **pcur_region, int *pomp_index) EDGE_TM_UNINSTRUMENTED | (label1 ? 0 : EDGE_FALLTHRU)); tree label3 = gimple_transaction_label_over (txn); - if (gimple_transaction_subcode (txn) & GTMA_HAVE_ABORT) + if (gimple_transaction_subcode (txn) + & (GTMA_HAVE_ABORT | GTMA_IS_OUTER)) make_edge (bb, label_to_block (label3), EDGE_TM_ABORT); fallthru = false;