[llvm-commits] [PATCH] Machine code verifier pass
Jakob Stoklund Olesen
stoklund at 2pi.dk
Fri May 15 16:11:56 PDT 2009
On 15/05/2009, at 23.30, Evan Cheng wrote:
> On May 15, 2009, at 11:50 AM, Jakob Stoklund Olesen <stoklund at 2pi.dk>
>> On 15/05/2009, at 19.44, Evan Cheng wrote:
>>> There shouldn't be any *real* double defs. However, a def of EAX
>>> followed by def of a sub-register, e.g. AX, is totally legal.
>> Ouch, that means I misunderstood how sub-registers work. I assumed
>> that def of EAX implied def of AX so a second def would be illegal.
> No that's right. Def of EAX does imply def of AX. But you can then
> update a part of EAX (read mod write). I think livevariables would add
> a implict kill of the subreg. But it's unclear whether all passes
> would do the same.
OK, I am allowing double-def if a super-register is also defined. So
this is legal:
But his is illegal:
It looks like most of the remaining errors from X86 test cases are
related to the MBB live-in lists.
More information about the llvm-commits