[libre-riscv-dev] shader compiler progress update
Luke Kenneth Casson Leighton
lkcl at lkcl.net
Sat Dec 22 22:00:04 GMT 2018
On Sat, Dec 22, 2018 at 9:57 PM Jacob Lifshay <programmerjake at gmail.com> wrote:
> LLVM does sort-of support vector masks (it supports the on load/store, but
> not all arithmetic operations).
ok - interesting. and quirky.
> On Sat, Dec 22, 2018, 08:34 Luke Kenneth Casson Leighton <lkcl at lkcl.net
> > thoughts / questions coming through: what's the general goal? SPIR-V
> > is an intermediate (compiled) representation, based originally on
> > LLVM. so... is the goal to *interpret* the SPIR-V or to *compile*
> > SPIR-V? as in, is the plan to write a rust *program* that
> > *interprets* the SPIR-V compiled code, or to write a write
> > *translator* that translates the SPIR-V into say.... LLVM IR, and then
> > execute that under the standard LLVM runtime (or an LLVM JIT)?
> Translating to LLVM IR and executing using LLVM to JIT compile the code is
> the goal.
btw in the pyjs project we did quite a lot of AST remapping. looking
for patterns, and replacing them with alternative AST trees.
*finally* an output pass was done. the exact same kind of trick is
done in lib2to3.
> If we implemented a SPIR-V interpreter, everyone would use llvmpipe instead
> because it would be many times faster.
thought so :)
More information about the libre-riscv-dev