Saturday, July 22, 2006

cr0/cr7

So, I am back! And I discovered a very sinister bug in my allocator... well, I cannot solve it yet. I don't know exactly what is happening. Let me tell the whole story. Can you see this assembly? So, my allocator is
assigning cr0 where linear scan is using cr7. Now, how linear scan knows that it should be cr7 instead of cr0? There is no conflict between the original temporaries. You can check this in the control flow graph here. I will postpone this bug for the moment, because tomorrow I will be dealing with spill. Oh, if you want to see the program that caused this weird bug, it is this one.

0 Comments:

Post a Comment

<< Home