On Saturday, 22 April 2017 at 14:22:18 UTC, John Colvin wrote:
On Thursday, 20 April 2017 at 12:56:11 UTC, Stefan Koch wrote:
Hi Guys,
I just begun work on the x86 jit backend.
Because right now I am at a stage where further design
decisions need to be made and those decisions need to be
informed by how a _fast_ jit-compatible x86-codegen is
structured.
Since I do believe that this is an interesting topic;
I will give you the over-the-shoulder perspective on this.
At the time of posting the video is still uploading, but you
should be able to see it soon.
https://www.youtube.com/watch?v=pKorjPAvhQY
Cheers,
Stefan
Is there not some way that you could get the current
interpreter-based implementation in to dmd sooner and then
modify the design later if necessary when you do x86 jit? The
benefits of having just *fast* ctfe sooner are perhaps larger
than the benefits of having *even faster* ctfe later. Faster
templates are also something that might be higher priority -
assuming it will be you who does the work there.
Obviously it's your time and you're free to do whatever you
like whenever you like, but I was just wondering what you're
reasoning for the order of your plan is?
newCTFE is currently at a phase where high-level features have to
be implemented.
And for that reason I am looking to extend the interface to
support for example scaled loads and the like.
Otherwise you and up with 1000 temporaries that add offsets to
pointers.
Also and perhaps more importantly I am sick and tired of hearing
"why don't you use ldc/llvm?" all the time...