[Mesa-dev] [Bug 100073] Shader Disk Cache 32/64 bit detection has a flaw. Missed existence of x32 ABI
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Thu Mar 9 21:45:31 UTC 2017
https://bugs.freedesktop.org/show_bug.cgi?id=100073
--- Comment #12 from oiaohm at gmail.com ---
(In reply to Timothy Arceri from comment #11)
> (In reply to oiaohm from comment #9)
> > Jan Vesely
> > <b>If the pointer size is the same and the timestamp is the same, the cache
> > will be reused, not deleted, and the problem does not exist.</b>
> >
> > I have a little problem. I have x32 and i386. So pointer size is the same
> > timestamp and contents of cache should be different. This will happen if I
> > am running a reproducible build with frozen time. This can also happen if
> > you make to 64 library builds with frozen time because the two builds will
> > have the same timestamps even if they are completely different versions of
> > mesa incompatible disc cache requirements.
> >
> > https://reproducible-builds.org/docs/timestamps/
> >
> > The reason I provided this link is time is no longer trust-able as a unique
> > value. Do note the usage of libfaketime its really simple to forget you
> > still have that loaded after doing a reproducible build so the clock is not
> > in fact ticking forwards for anything you are doing you wake up when you
> > finally do something that is dependant on the clock in fact ticking. So
> > you need to look at other sources to get unique value.
>
> x32 should end up in the ilp-32 directory. That's what the __ILP32__ is
> meant to do. Even if it didn't and the cache wasn't deleted because all your
> arch builds had the same timestamp it still wouldn't matter because the
> timestamp is used to identify the Mesa version not the arch, the arch
> doesn't matter in terms of the cache it will work just fine. The only reason
> for the different dirs is because we have no way of knowing if the different
> timestamps are the same Mesa version
1 if you are using timestamp it ID mesa version just use mesa version.
Next do read what x32 API is
https://en.wikipedia.org/wiki/X32_ABI
There is a different count in registers between i386 and x32. So yes they both
report as ilp-32 but if you are running a software rendering engine how the how
the shader code has to be optimised is totally different to take advantage of
x32 mode.
--
You are receiving this mail because:
You are the assignee for the bug.
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20170309/48ce2dbc/attachment-0001.html>
More information about the mesa-dev
mailing list