Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[compiler] Integrate xDSL kernel compilation into IREE #3

Merged
merged 4 commits into from
May 17, 2024

Conversation

zero9178
Copy link
Member

This PR contains the initial version integrating xDSL with IREE. The steps performed are the following:

  • Split a kernel function into two:
    • A pure MLIR dialects module that will be compiled by xDSL
    • A trampoline containing HAL operations that calls the latter
  • Compile the pure MLIR functions with xDSL to an object file
  • Compile the trampoline using IREE's lowerings and LLVM to an object file
  • Combine all object files into a single object file
  • Output a static library the same way the LLVMCPU target does

This introduces two new build dependencies:

  • xdsl-opt for kernel compilation
  • The pulp-toolchain to assemble the output from xDSL

zero9178 added 4 commits May 17, 2024 14:57
This PR contains the initial version integrating xDSL with IREE.
The steps performed are the following:
* Split a kernel function into two:
  - A pure MLIR dialects module that will be compiled by xDSL
  - A trampoline containing HAL operations that calls the latter
* Compile the pure MLIR functions with xDSL to an object file
* Compile the trampoline using IREE's lowerings and LLVM to an object file
* Combine all object files into a single object file
* Output a static library the same way the LLVMCPU target does

This introduces two new build dependencies:
* xdsl-opt for kernel compilation
* The pulp-toolchain to assemble the output from xDSL
@zero9178 zero9178 merged commit bfd8b7d into main May 17, 2024
1 check passed
@zero9178 zero9178 deleted the codegen-through-xdsl branch May 17, 2024 18:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant