[Webkit-unassigned] [Bug 153463] [mips] don't save to a callee saved register too early

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Jan 26 18:09:06 PST 2016


--- Comment #4 from Guillaume Emont <guijemont at igalia.com> ---
(In reply to comment #3)
> Comment on attachment 269812 [details]
> Patch
> I just took a look at the generated code in LLIntAssembly.h and this looks
> wrong to me.
> I mean, if this patch fixes crashes, there is a better way to do the fix as
> this patch is actually removing the $gp save/restore mechanism.

I might be missing a need for the $gp save/restore mechanism, but my understanding so far is that it is only needed when making a function call (jal/jalr), and I think that there are no other cases where $gp would get overwritten (LLInt itself does not seem to touch $gp apart from that mechanism and pichdr through cpload). Under that assumption, I don't think we need to save $gp at the beginning of each function, but rather only when we are calling another PIC function (would it be from LLInt or somewhere else), which is what this patch does. And indeed it makes sense to save it in a callee saved register, since if a function will modify it it would take care of saving it.

You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-unassigned/attachments/20160127/7285ca75/attachment.html>

More information about the webkit-unassigned mailing list