[Webkit-unassigned] [Bug 214142] [WTF] Fix PackedAlignedPtr for X86_64 canonical addresses

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Jul 9 15:16:51 PDT 2020


https://bugs.webkit.org/show_bug.cgi?id=214142

--- Comment #16 from Mark Lam <mark.lam at apple.com> ---
(In reply to Jim Mason from comment #15)
> (In reply to Yusuke Suzuki from comment #14)
> > Comment on attachment 403897 [details]
> > Patch
> > 
> > View in context:
> > https://bugs.webkit.org/attachment.cgi?id=403897&action=review
> > 
> > > Source/WTF/wtf/Packed.h:147
> > > +#if CPU(X86_64)
> > 
> > When doing that, please do it only in Solaris.
> 
> I was planning to make the changes requested by Mark tomorrow, but the whole
> point of this patch is to provide support for X86_64 canonical addressing in
> webkit.  It is not just a Solaris thing.
> 
> If webkit does not want to do the right thing for X86_64, let me know and I
> will  just close the bug.

Just to clarify.  I think Yusuke's point is not that this is strictly incorrect, but that it is unnecessary for any other OS than Solaris.  In WebKit, we do a lot of work to make sure the code is optimal.  While this extra work does not hurt in terms of correctness, it is guaranteed to be an effective no-op on any OS that is not Solaris because for other OSes, user space never has an address with a set bit 47.  So, it is not incorrect to omit this extra code for any OS that is not Solaris.  Yusuke's concern here is with regards to performance.

That said. I don't see WTF_OS_SOLARIS defined in PlatformOS.h.  So, in order to add the #if OS(SOLARIS) check, one would have to figure out how to detect a build targeting Solaris and add the WTF_OS_SOLARIS #define in PlatformOS.h.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20200709/42a79e6f/attachment-0001.htm>


More information about the webkit-unassigned mailing list