On 10/16/12 4:14 PM, Jonathan Neuschäfer wrote: >> Actually, the situation of Phi nodes in LLVM is actually slightly more >> complex: They require "one pair (of value and BB) for each predecessor >> basic block of the current block"[1]. This mean that we'll sometimes >> need to insert phi nodes into BBs that don't directly use a value. On Tue, Oct 16, 2012 at 11:53 PM, Xi Wang <xi.wang@xxxxxxxxx> wrote: > I ran into the same problem before. I would suggest a simpler and safer > way: don't emit LLVM phi; instead emit load/store (of some alloca). > > phi => load from some alloca > phisrc => store to some alloca Is LLVM able to optimize away the allocas and use registers instead in the emitted code? If not, that means we'll spill and reload at every basic block boundary... -- To unsubscribe from this list: send the line "unsubscribe linux-sparse" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html