{OT} Youtube Video: newCTFE: Starting to write the x86 JIT

Stefan Koch via Digitalmars-d digitalmars-d at puremagic.com
Sat Apr 22 07:29:22 PDT 2017


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...



More information about the Digitalmars-d mailing list