On Tue, Jan 23, 2018 at 1:33 AM, Pierre Moreau <pierre.mor...@free.fr> wrote: > Signed-off-by: Pierre Moreau <pierre.mor...@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. > + _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 > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev