in reply to Re^5: Perl 5 Optimizing Compiler, Part 5: A Vague Outline Emerges
in thread Perl 5 Optimizing Compiler, Part 5: A Vague Outline Emerges
No, not in the slightest. I think this is the fundamental impedence mismatch between you and me on this subject.
Having spent the last 9 hours to produce what I posted, having you dismiss it in under 10 minutes -- barely enough time to read the post, never mind look at the code with any attention to detail -- is ... well ... let's just say, disappointing and leave it at that.
You keep asserting that if LLVM can only be given a full picture of the program, it will be able to do (unspecified) wonderful things with it.
Firstly, I said may, not "will". It is "(unspecified)" because -- as I've been at pains to state often & clearly -- noone yet knows. I've provided a long list of possibilities, cited documents with examples of them. But I am not a computer and cannot possibly be expected to mentally run hundreds of thousands of lines of Perl sources through a dozen or more optimisation techniques and pick out salient examples to satisfy your demands for the instant gratification of "a concrete example".
All I've sought from you, is your knowledge and expertise of and with the existing codebase, to enable the investigations to get a quick, clean start.
PS I completely fail to understand the the point of your showing how run.c gets converted to IR. run.c just contains a single trivial C function, operating on a few args and variables of particular types, and the IR knows the types of those args. So what?
The "what" is, that if it can encapsulate and annotate the entire internal (data) structure of Perl, in 100 lines of language independent, platform independent, eminently human readable, metadata, then it can also rewrite those structures and the function trees that use them in ways that neither a C compiler, nor a C programmer -- no matter how experienced -- could ever imagine doing.
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^7: Perl 5 Optimizing Compiler, Part 5: A Vague Outline Emerges
by chromatic (Archbishop) on Aug 31, 2012 at 18:20 UTC | |
by BrowserUk (Patriarch) on Aug 31, 2012 at 18:51 UTC |