CTFE Status

Stefan Koch via Digitalmars-d digitalmars-d at puremagic.com
Fri Dec 16 22:44:53 PST 2016


On Saturday, 17 December 2016 at 04:14:29 UTC, Stefan Koch wrote:
> I just fixed gotos again.
> While researching unusually large performance drops, I found 
> the cause for a rather nasty bug. (It was an off-by-one error 
> again :))
>
> It turned out that there were circumstances where some gotos 
> would be dropped and the corresponding fixup jumps where never 
> emitted.
>
> Due to a curious situation in the dmd ast, I had to make jumps 
> without addresses into nops.
> This was hiding the bug.
>
> BTW supporting NOPS has been a huge pain for some time now.
> I will look into fixing my dmd-ast handling to make them 
> unnecessary.
> Jumps that don't know where they are supposed to go should not 
> be ignored but an error instead!

I rectified a few more performance problems.
The StringEquals macro put alot of pressure on the bytecode 
generator.
Therefore I implemented it as an instruction.
Interestingly this did not speed up the execution by as much as I 
would have expected,
maybe I need better test-cases ?


More information about the Digitalmars-d mailing list