[PATCH] x86 NaCl: Emit LAHF/SAHF instead of PUSHF/POPF

Tim Northover t.p.northover at gmail.com
Thu Jan 8 15:23:58 PST 2015


> Note the lack of AX save/restore because liveness thinks it ins't live at this location.
>
> @t.p.northover do you think that's indeed where the bug lies, or am I missing something?

I think so. It looks like a miscommunication between
computeRegisterLiveness and analyzePhysReg.

The call gets analysed as clobbering AX but not defining it, which the
computation treats as "Dead". I'm really not sure how the output of
analyzePhysReg should be interpreted though. At first glance
(comparing against comments & documentation) it seems like it's
confusing super-regs with sub-regs, but I don't think even that would
fix it completely.

Cheers.

Tim.



More information about the llvm-commits mailing list