[Mesa-dev] [PATCH 00/19] gallium, radeonsi: temporary array improvements
Nicolai Hähnle
nhaehnle at gmail.com
Tue Aug 9 10:36:29 UTC 2016
Hi,
this series was originally motivated by fixing a VM fault and ended up
growing a bit larger :-)
The goal of patches 1-7 is to change st/mesa so that it sets the UsageMask
field in temporary array declarations. This ends up being helpful for
lowering float and vecN arrays with N <= 3.
The remaining patches are radeon (really radeonsi) specific. They begin
with a bunch of cleanups, and then do two things: first, when alloca is
used for arrays, make use of the UsageMask to allocate smaller arrays
when possible. Second, add explicit bounds checks when accessing those
arrays to prevent VM faults -- those temporary array accesses are not
protected by limits in buffer descriptors.
Note that the radeon part of the series exposes some pre-existing LLVM
bugs in Piglit, at least one of which has already been encountered
elsewhere, see http://reviews.llvm.org/D22556 and
http://reviews.llvm.org/D23303.
Please review!
Thanks,
Nicolai
More information about the mesa-dev
mailing list