From mboxrd@z Thu Jan 1 00:00:00 1970 From: Luc Van Oostenryck Subject: Re: Possible incorrect linearization of code (master branch) Date: Tue, 7 Mar 2017 07:42:34 +0100 Message-ID: <20170307064233.dvo5ctrphaneubei@macpro.local> References: <20170306163638.huqjg6my2qhwyyzy@macpro.local> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Received: from mail-wm0-f51.google.com ([74.125.82.51]:33105 "EHLO mail-wm0-f51.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752233AbdCGH5j (ORCPT ); Tue, 7 Mar 2017 02:57:39 -0500 Received: by mail-wm0-f51.google.com with SMTP id v203so8514739wmg.0 for ; Mon, 06 Mar 2017 23:56:13 -0800 (PST) Content-Disposition: inline In-Reply-To: Sender: linux-sparse-owner@vger.kernel.org List-Id: linux-sparse@vger.kernel.org To: Dibyendu Majumdar Cc: Linux-Sparse On Mon, Mar 06, 2017 at 10:39:42PM +0000, Dibyendu Majumdar wrote: > On 6 March 2017 at 19:26, Luc Van Oostenryck > wrote: > > On Mon, Mar 6, 2017 at 7:47 PM, Dibyendu Majumdar > >> Because I have a modified > >> version of Sparse with all global state removed, merging changes is a > >> bit painful as it has be done manually. > > > > I can imagine this. > > I, of course, hve no idea why you (have to) do this but I can only very strongly > > advice you to try to avoid this as much as possible. > > > > As I mentioned before I am using Sparse to create a JIT compiler for > C. So this needs to be callable as a library - and I need the ability > to call it many times. Moreover it must be possible to call several > instances of Sparse simultaneously without conflict. To achieve all > this, all global state is held in a set of structures. The main change > is that the most function calls have an additional argument. The other > changes are related to initialization of the various global structures > used by Sparse. Generally I try to keep the code as far as possible > identical to Sparse except for these changes. Even so merging is very > painful. OK, I understand better now. Yes, I imagine it must be painful. Do you really need to have this ability to run several instances during development, while investigating problems? -- Luc