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

Make it possible for downstream packages to use the compile entrypoint #418

Merged
merged 2 commits into from
Mar 30, 2023

Conversation

maleadt
Copy link
Member

@maleadt maleadt commented Mar 30, 2023

Currently, packages like CUDA.jl were using the emit_ functions directly because they needed access to more intermediate forms of compilation results. That's a pity though because those methods are more unstable, e.g., emit_julia getting removed in #417.

In this PR, I'm making it so that more stuff is returned when calling the main compilation driver's entrypoint, GPUCompiler.compile. That should make it possible to avoid calling into any emit_ function, hopefully reducing breakage in the future.

As part of this PR, I'm slightly simplifying the compilation hook design such that we don't need to check for it explicitly from the compilation cache.

cc @jpsamaroo

@codecov
Copy link

codecov bot commented Mar 30, 2023

Codecov Report

Patch coverage: 30.76% and project coverage change: -0.04 ⚠️

Comparison is base (14fadbc) 79.88% compared to head (dcc257e) 79.85%.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #418      +/-   ##
==========================================
- Coverage   79.88%   79.85%   -0.04%     
==========================================
  Files          24       24              
  Lines        2904     2904              
==========================================
- Hits         2320     2319       -1     
- Misses        584      585       +1     
Impacted Files Coverage Δ
src/cache.jl 100.00% <ø> (+3.84%) ⬆️
src/reflection.jl 35.87% <18.18%> (-0.56%) ⬇️
src/driver.jl 92.09% <100.00%> (ø)
src/spirv.jl 82.66% <100.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

☔ View full report in Codecov by Sentry.
📢 Do you have feedback about the report comment? Let us know in this issue.

@maleadt maleadt force-pushed the tb/functionspec branch 4 times, most recently from 3022dc1 to 1a2f444 Compare March 30, 2023 15:08
Base automatically changed from tb/functionspec to master March 30, 2023 18:31
@maleadt maleadt force-pushed the tb/compile_entrypoint branch from c7a891e to dcc257e Compare March 30, 2023 18:32
@maleadt maleadt merged commit df484de into master Mar 30, 2023
@maleadt maleadt deleted the tb/compile_entrypoint branch March 30, 2023 20:34
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