TheDan64 / inkwell

It's a New Kind of Wrapper for Exposing LLVM (Safely)
https://thedan64.github.io/inkwell/
Apache License 2.0
2.22k stars 217 forks source link

Most (all?) passes have a maximum LLVM version number of 16. #505

Open nielsdos opened 3 weeks ago

nielsdos commented 3 weeks ago

Describe the Bug

Most passes have a maximum LLVM version number of 16. For example, the type based alias analysis pass has: https://github.com/TheDan64/inkwell/blob/5c9f7fcbb0a667f7391b94beb65f1a670ad13221/src/passes.rs#L1055-L1058 However, this pass is also available in LLVM 17 and 18. Looking at the passes.rs file, it looks like most (or all?) passes define a maximum version number of 16, making them impossible to use with LLVM 17.

To Reproduce

let pm = PassManager::create(());
pm.add_type_based_alias_analysis_pass(); // Doesn't work

Expected Behavior

I expect these passes to be available for LLVM 17.

LLVM Version (please complete the following information):

Desktop (please complete the following information):

Additional Context

N/A

TheDan64 commented 2 weeks ago

Not sure why this happened, thanks for reporting