History log of /frameworks/rs/rsov/compiler/rs2spirv_driver.sh
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
bf22a8ab4f46a98ee37f95fc0402744132cc3ed2 07-Feb-2017 Yang Ni <yangni@google.com> Rewrite rs2spirv using spirit

Bug: 30964317

Rewrote the wrapper generation and builtin/runtime function
translation passes in rs2spirv using spirit.

Also added support for about a dozen more floating-point builtin
math functions.

Added support for new-style root kernel with lit test. Added check
for old-style kernels with lit test. Updated existing lit tests
since generated code are slightly different, mostly on temp names.

Added SPIR-V validation to all lit tests.

Updated the RSoV driver to work with the new spirit-based compiler.

The entry point is now named entry_<kernel name>.

Fixed an issue with multi-input kernel, so that the type count is
correctly set.

Minor cleanup to destroy descriptor sets after a kernel launch
and to remove an outdated comment.

Test: lit tests and RSoVTest

Change-Id: I07b5957667892e532dcbc2da98ed38fe783af5e9
2a85b6b9d6f9cb8f1b20d573c1c5ceafe901b011 09-Jan-2017 Jean-Luc Brouillet <jeanluc@google.com> Move scriptc to script_api/include.

Part 1 of the directory re-organization. We're renaming the "api" directory
to "script_api" directory to distinguish between our control api (java or c++)
and our script api.

We're also moving the scriptc directory under that newly renamed directory,
and change its name to the more appropriate "include".

Test: scriptc/generate.sh
Test: compiled ImageProcessing_jb

Change-Id: I00c3bbf5728b652d1541ebe4123717f6ab639f09
8a4196157488694e1188e0ce9725f733babfeb19 07-Dec-2016 I-Jui (Ray) Sung <ijsung@google.com> Allow rs2spirv_driver.sh working from any path relative to given input

rs2spirv_driver.sh used to require being invoked from the same directory
as the given RS source. The root cause was that it didn't trim the
enclosing directories of given source path, while llvm-rs-cc does, and
thus the rest of compilation stages fail to see the bitcode file from
llvm-rs-cc. This change aligns the path expectation of these tools.

Test: invoking rs2spirv_driver.sh from various paths relative to the
input file

Change-Id: I22aead2a645dc82434788bde01808dc69e35c978
bfea58a0aa9fef0a6799868398f8052e08a4490a 29-Nov-2016 David Gross <dgross@google.com> rs2spirv_driver.sh usability improvements.

- Stop executing command chain as soon as any command fails.
- Exit with status of last executed command.
- Stricter argument checking.
- Better usage error message.
- Do not emit extra blank lines.
- Add --trace option.
- Do not dump final SPIR-V to stdout unless --dump option.

Test: Various experiments with good and bad arguments.

Change-Id: Idc7e1225d7580aa657404b209f1b5b8cb8620cfe
04ac689251b180cb9f569083f71a5d66825734e2 22-Nov-2016 I-Jui (Ray) Sung <ijsung@google.com> Fixed rs2spirv_driver.sh on builds without DISABLE_NDEBUG

rs2spirv_driver.sh expected LLVM builds that have
FORCE_BUILD_LLVM_DISABLE_NDEBUG set. On builds without that, it fails.
This patch fixes that problem.

Test: rsov/compiler/test/run-lit-tests.sh and
rs2spirv_driver.sh with images/blend.rs by:
$ cd <path-to-rsov>/compiler/tests/image/
$ ../../rs2spirv_driver.sh \
<path-to>/android-ndk-r13b/shader-tools/linux-x86_64 \
./blend.rs tmp_blend

Change-Id: I63bdbebf7ef5ba0ab993d9ac73c499c7b08c47e1
6749f541c20e86f5deb6fd421ed5849ef43c275c 08-Nov-2016 Yang Ni <yangni@google.com> Initial backend compiler for RSoV

Bug: 30964317

This compiler compiles RenderScript LLVM bitcode into SPIR-V.

This was done by Jakub Kuderski as part of his 2016 summer internship
at Google.

Test: build

Change-Id: I395cdab2b97451b9e0a9b866af2d112ead73ab72