search for: selectcont

Displaying 3 results from an estimated 3 matches for "selectcont".

2004 Jun 22
3
[LLVMdev] Linearscan allocator bug?
...ine 90. The problem is that gr6 is not initialized in the interval from the function entry till the jump. I also attach the debug dumps from my backend. The basic block in question is shortcirc_done.1 (line 198 in the log). It starts with: %reg1060 = phi %reg1032, mbb<shortcirc_next.0.selectcont.selectcont, The predecessor is at line 155 and the register 1032 is assigned a value on line 140 (in shortcirc_next.0.selectcont): %reg1032 = move %reg103 After register allocation the code in shortcirc_done.1 is (line 334): %gr2 = move %gr6 the predecessor in at line 285 and the cod...
2004 Jun 22
0
[LLVMdev] Linearscan allocator bug?
...> 90. The problem is that gr6 is not initialized in the interval from the > function entry till the jump. Okay, I see the problem. You need to tell the compiler that the conditional branches are terminators. You're getting code that looks like this: <LBB7> // // shortcirc_next.0.selectcont.selectcont gr1 = gr1; gr1 = gr1; gr5 = 0; gr2 - gr5; if <>0 goto LBB11; * gr2 = gr4; * gr5 = gr1; * gr6 = gr4; * gr1 = gr1; goto LBB8; I'm guessing that those copies are inserted by the register allocator, and in par...
2004 Jun 23
3
[LLVMdev] Linearscan allocator bug?
...is not initialized in > > the interval from the function entry till the jump. > > Okay, I see the problem. You need to tell the compiler that the > conditional branches are terminators. You're getting code that looks like > this: > > <LBB7> // // shortcirc_next.0.selectcont.selectcont > gr1 = gr1; > gr1 = gr1; > gr5 = 0; > gr2 - gr5; > if <>0 goto LBB11; > * gr2 = gr4; > * gr5 = gr1; > * gr6 = gr4; > * gr1 = gr1; > goto LBB8; > > I'm guessing that thos...