From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3406 invoked by alias); 17 Oct 2011 12:40:41 -0000 Received: (qmail 3393 invoked by uid 22791); 17 Oct 2011 12:40:41 -0000 X-SWARE-Spam-Status: No, hits=-2.4 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,RP_MATCHES_RCVD,SPF_HELO_PASS X-Spam-Check-By: sourceware.org Received: from smtp-out.google.com (HELO smtp-out.google.com) (216.239.44.51) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 17 Oct 2011 12:40:17 +0000 Received: from wpaz33.hot.corp.google.com (wpaz33.hot.corp.google.com [172.24.198.97]) by smtp-out.google.com with ESMTP id p9HCeGMT010522 for ; Mon, 17 Oct 2011 05:40:16 -0700 Received: from yxk36 (yxk36.prod.google.com [10.190.3.164]) by wpaz33.hot.corp.google.com with ESMTP id p9HCawiK031447 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=NOT) for ; Mon, 17 Oct 2011 05:40:15 -0700 Received: by yxk36 with SMTP id 36so4420115yxk.3 for ; Mon, 17 Oct 2011 05:40:15 -0700 (PDT) Received: by 10.150.131.8 with SMTP id e8mr17246948ybd.73.1318854783684; Mon, 17 Oct 2011 05:33:03 -0700 (PDT) MIME-Version: 1.0 Received: by 10.150.131.8 with SMTP id e8mr17246924ybd.73.1318854783455; Mon, 17 Oct 2011 05:33:03 -0700 (PDT) Received: by 10.151.14.17 with HTTP; Mon, 17 Oct 2011 05:33:03 -0700 (PDT) In-Reply-To: <20111017020904.A409722266C@jade.mtv.corp.google.com> References: <20111017020904.A409722266C@jade.mtv.corp.google.com> Date: Mon, 17 Oct 2011 13:04:00 -0000 Message-ID: Subject: Re: [pph] Refactor Vectors and Chains (issue5263051) From: Diego Novillo To: Lawrence Crowl Cc: reply@codereview.appspotmail.com, gcc-patches@gcc.gnu.org Content-Type: text/plain; charset=UTF-8 X-System-Of-Record: true X-IsSubscribed: yes Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org X-SW-Source: 2011-10/txt/msg01516.txt.bz2 On Sun, Oct 16, 2011 at 22:09, Lawrence Crowl wrote: > Factor the vector and chain output routines to remove boolean control > parameters. The functions pph_out_tree_vec_1 and pph_out_chain_1 split > their conditional parts of their implementation into their use cases, > calling each other as needed. > > pph_out_tree_vec - nothing special > pph_out_tree_vec_unchain - unchaining > pph_out_mergeable_tree_vec - merging, unchaining, reversing > pph_out_tree_vec_filtered - filtering > pph_out_chain - nothing special > pph_out_chain_filtered - filtering > pph_out_mergeable_chain_filtered - merging, unchaining, reversing, filtering But, you are duplicating code that the previous patch had explicitly commonized. Why? It's easier to keep the core streaming logic in one function, to have a single point of debugging when dealing with sync problems. > This change fixes an ordering bug, but now causes an ICE to surface, > which will be addressed later. What ordering bug? Diego.