[code-reflection] RFR: Example use of code reflection in translating Java to SPIR-V
Steve Dohrmann
duke at openjdk.org
Tue Mar 12 22:57:53 UTC 2024
Example code showing use of code reflection in translation from Java to SPIR-V intermediate language. For more information on SPIR-V see [https://www.khronos.org/spir](https://www.khronos.org/spir).
Translates from a Java CoreOps.FuncOp object to a SpirvOps.FuncOp object and then to an entry point in a SPIR-V binary module. One test is included that demonstrates use and renders the Java model, SPIR-V model, and disassembled binary representations of an example Java method.
A subsequent pull-request will provide additional test code, including the ability to test SPIR-V binaries on GPU hardware.
Dependencies:
This code depends on a Java SPIR-V builder API (https://github.com/beehive-lab/beehive-spirv-toolkit). The toolkit can be installed locally with:
git clone https://github.com/beehive-lab/beehive-spirv-toolkit
cd beehive-spirv-toolkit
mvn clean install
-------------
Commit messages:
- fix more whitespace issues
- fix whitespace issues
- fix README
- fix pom header
- spirv-example initial commit
Changes: https://git.openjdk.org/babylon/pull/38/files
Webrev: https://webrevs.openjdk.org/?repo=babylon&pr=38&range=00
Stats: 2448 lines in 10 files changed: 2448 ins; 0 del; 0 mod
Patch: https://git.openjdk.org/babylon/pull/38.diff
Fetch: git fetch https://git.openjdk.org/babylon.git pull/38/head:pull/38
PR: https://git.openjdk.org/babylon/pull/38
More information about the babylon-dev
mailing list