[Mesa-dev] gallium scaled types
Dave Airlie
airlied at gmail.com
Tue Nov 1 07:11:49 PDT 2011
>
> After wasting so much time on this topic, and conceding on most points, I'm disappointed that the new pure integers formats were added without support for converting to/from floats (my 2nd request above) which ended up causing obscures bugs in llvmpipe (my 1st request).
>
> I regret having been so laissez-faire -- I should had made a fuss in the review request when my 2nd request was ignored --, but I learnt my lesson.
I just added a fix to make sure llvmpipe didn't say it supported pure
integer types so it should be unable to execute any of the problematic
paths.
The thing is converting pure integers to floats at any point in the
pipeline is wrong and is a bug and should be treated as such. I left
scope for translating ints to floats but I can find no reason in any
API to enable this and unless someone has proof of such I don't feel
we should, since you cannot represent a 32-bit integers in a 32-bit
float without loss of precision.
I'll do another llvmpipe run vs 7.11 and see what falls out later
today and fix it, I did one before merge though I had to do a rebase
since.
But vlee has been fairly good at pointing me at piglit regressions so
far and I've tried to fix them as they came in.
Adding GLSL1.30 support to llvmpipe is going to involve doing it
properly and not adding int->float conversions.
Dave.
More information about the mesa-dev
mailing list