<div dir="ltr">No progress since Charlie last looked at it. As Per suggested, it may be worth adding an explicit #error, or at least a comment, noting that the later examples are broken.<div><div><br></div><div>Going forward, I see three options:</div><div><br></div><div>(1) Remove the old tutorials entirely, and encourage people to check out the MCJIT and Orc versions.</div><div>(2) Build an Orc-based stack that approximates the behavior of the Old JIT (which the old tutorials assume).</div><div>(3) Rewrite the old tutorial to natively use the new APIs.</div><div><br></div><div>I much prefer the third option. The first option misses out on a lot of language/API discussion that's contained in the later chapters of the old tutorials. The second option replicates a JIT stack that wouldn't be useful for most clients.</div><div><br></div><div>If we were going to pursue option three, the simple JIT from the Orc/initial tutorial seems like a good starting point to re-write the old tutorials. Then we'd have an interesting bifurcation part way through the tutorial series: Go one way and add new language features on top of the simple JIT, or go another and add features to the JIT while keeping the language steady. Cross-polination of the two branches (new JIT features + new language features) could be handled in future tutorials, or left as an exercise for the reader.</div><div><br></div><div>The tricky part, as usual, is finding the time to do this. Volunteers/patches welcome. :)</div><div><br></div><div>Cheers,</div><div>Lang.</div><div><br></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Apr 21, 2015 at 9:16 AM, David Blaikie <span dir="ltr"><<a href="mailto:dblaikie@gmail.com" target="_blank">dblaikie@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span class="">On Tue, Apr 21, 2015 at 7:26 AM, Per Mildner <span dir="ltr"><<a href="mailto:Per.Mildner@sics.se" target="_blank">Per.Mildner@sics.se</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span>Charlie Turner <charlesturner7c5 <at> <a href="http://gmail.com" target="_blank">gmail.com</a>> writes:<br>
<br>
> I was planning on committing these changes with the corresponding<br>
> changes to the Kaleidoscope tutorial walk-through. Might be a bit of a<br>
> surprise to have no explanation of what MCJITHelper and friends is<br>
> doing.<br>
><br>
> I'll try and make time to prepare some patches along these lines, as<br>
> well as updating future chapters with the same fix.<br>
><br>
> Thanks for taking a look :)<br>
<br>
<br>
</span>Any progress on fixing the tutorial?<br>
<br>
I am about to dive into LLVM and after some hair-pulling found that the<br>
Kaleidoscope tutorials (from part 5 onwards), are broken.<br>
<br>
Obviously this is not a good first impression.<br>
<br>
(even a note in the source code, #error "currently does not work", would be<br>
a huge improvement, since it would avoid a lot of wasted time for the beginner.)<br>
<br>
PS. On OS X 10.8.5, the compile command for part 4 of the tutorial needs<br>
-fno-rtti, presumably because the code now inherits from a LLVM class.<br></blockquote></span><div><br>Lang - recall what the state is here?<br> </div><span class=""><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Regards,<br>
<br>
Per Mildner<br>
<div><div><br>
<br>
_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:LLVMdev@cs.uiuc.edu" target="_blank">LLVMdev@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu" target="_blank">http://llvm.cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br>
</div></div></blockquote></span></div><br></div></div>
</blockquote></div><br></div>