Work towards atomic legalization
Given #652 I was thinking on how we best could test the correct legalization,
For now this adds some tests for the status quo.
Codecov Report
Attention: Patch coverage is 12.00000% with 22 lines in your changes missing coverage. Please review.
Project coverage is 71.03%. Comparing base (
8b8c73f) to head (c6fbdb5).
| Files with missing lines | Patch % | Lines |
|---|---|---|
| src/atomic_legalization.jl | 0.00% | 18 Missing :warning: |
| src/driver.jl | 42.85% | 4 Missing :warning: |
Additional details and impacted files
@@ Coverage Diff @@
## master #701 +/- ##
==========================================
- Coverage 71.63% 71.03% -0.61%
==========================================
Files 24 25 +1
Lines 3519 3470 -49
==========================================
- Hits 2521 2465 -56
- Misses 998 1005 +7
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
:rocket: New features to boost your workflow:
- :snowflake: Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
LLVM_jll.jl is reasonably sized for it to become a dependency here. I'm very much in favour of using lit; the regexes here are becoming annoying (e.g. having to deal with both opaque and typed pointers, which could be a nice feature flag in lit I think).
Re-importing all of GPUCompiler, including the non-precompiled test code (from helpers), for each lit invocation does seem a little expensive though. I wonder if we could jerry-rig it do interpret the RUN statements (hopefully they can be multiline) as Julia code? If not, maybe we should reimplement the RUN parsing ourselves and only use FileCheck (I don't think we would be using many of lit's other features)?