[Mesa-dev] [PATCH v2 13/22] clover: Handle the case when linking SPIR-V binaries together
Pierre Moreau
pierre.morrow at free.fr
Tue Jan 23 17:16:18 UTC 2018
On 2018-01-23 — 08:32, Karol Herbst wrote:
> On Tue, Jan 23, 2018 at 1:33 AM, Pierre Moreau <pierre.morrow at free.fr> wrote:
> > Signed-off-by: Pierre Moreau <pierre.morrow at free.fr>
> > ---
> > src/gallium/state_trackers/clover/core/program.cpp | 22 +++++++++++++++++-----
> > 1 file changed, 17 insertions(+), 5 deletions(-)
> >
> > diff --git a/src/gallium/state_trackers/clover/core/program.cpp b/src/gallium/state_trackers/clover/core/program.cpp
> > index 15d559cd93..976213ef95 100644
> > --- a/src/gallium/state_trackers/clover/core/program.cpp
> > +++ b/src/gallium/state_trackers/clover/core/program.cpp
> > @@ -22,6 +22,7 @@
> >
> > #include "core/program.hpp"
> > #include "llvm/invocation.hpp"
> > +#include "spirv/invocation.hpp"
> > #include "tgsi/invocation.hpp"
> >
> > using namespace clover;
> > @@ -80,11 +81,22 @@ program::link(const ref_vector<device> &devs, const std::string &opts,
> > std::string log = _builds[&dev].log;
> >
> > try {
> > - const module m = (dev.ir_format() == PIPE_SHADER_IR_TGSI ?
> > - tgsi::link_program(ms) :
> > - llvm::link_program(ms, dev.ir_format(),
> > - dev.ir_target(), opts, log));
> > - _builds[&dev] = { m, opts, log };
> > + switch (dev.ir_format()) {
> > + case PIPE_SHADER_IR_TGSI:
> > + _builds[&dev] = { tgsi::link_program(ms), opts, log };
> > + break;
> > + case PIPE_SHADER_IR_LLVM:
> > + case PIPE_SHADER_IR_NATIVE:
> > + case PIPE_SHADER_IR_NIR:
>
> is adding NIR here actually want to do? I am not aware of any path
> that would allow any NIR driver to support llvm at all.
That NIR case is not supposed to be there, and I have no idea how it got in. :o
I’ll remove it asap. Thanks for pointing it out!
Pierre
>
> > + _builds[&dev] = { llvm::link_program(ms, dev.ir_format(),
> > + dev.ir_target(), opts, log),
> > + opts, log };
> > + break;
> > + case PIPE_SHADER_IR_SPIRV:
> > + _builds[&dev] = { clover::spirv::link_program(ms, opts, log), opts,
> > + log };
> > + break;
> > + }
> > } catch (...) {
> > _builds[&dev] = { module(), opts, log };
> > throw;
> > --
> > 2.16.0
> >
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20180123/5c4c1a2c/attachment.sig>
More information about the mesa-dev
mailing list