beehive-lab / TornadoVM

TornadoVM: A practical and efficient heterogeneous programming framework for managed languages
https://www.tornadovm.org
Apache License 2.0
1.19k stars 113 forks source link

Refactor common compiler phases among different backends to drivers.common.compiler.phases package and restructure compiler utilities #304

Closed mikepapadim closed 9 months ago

mikepapadim commented 10 months ago

This PR refactors common compiler phases among all backends to be moved under drivers.common package to reduce code duplication. Also, cleanups sketch tier phases under the runtime package.

Backend/s tested

Mark the backends affected by this PR.

OS tested

Mark the OS where this PR is tested.

Did you check on FPGAs?

If it is applicable, check your changes on FPGAs.

How to test the new patch?

## Pass Unittests using the OpenCL backend
$ make BACKEND=opencl
$ make tests

## If the changes are also applicable to the PTX backend: 
## Pass unittests using the PTX backend
$ make BACKEND=ptx
$ make tests 

## If the changes are also applicable to the SPIR-V backend: 
## Pass unittests using the SPIRV backend
$ make BACKEND=spirv
$ make tests 

CLAassistant commented 10 months ago

CLA assistant check
All committers have signed the CLA.

mikepapadim commented 10 months ago

This is ready for review

jjfumero commented 10 months ago

All unitests passing + KFusion + RayTracer

jjfumero commented 9 months ago

LGTM. thanks @mikepapadim