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

Preliminary LLVM 19 support #557

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

stevefan1999-personal
Copy link

Description

Adds preliminary LLVM 19 support so that https://github.com/jamesmth/llvm-plugin-rs can build plugin with it. No new features have been added so far.

Related Issue

#530

How This Has Been Tested

Not yet

Option<Breaking Changes>

Checklist

@stevefan1999-personal
Copy link
Author

stevefan1999-personal commented Dec 14, 2024

I used a simple JIT example from README and it works. Looking good already but still need unit tests

@stevefan1999-personal
Copy link
Author

@TheDan64 Should the feature base name be renamed as llvm19-1? Looks like LLVM skipped 19.0 entirely and released 19.1 as the first one

@TheDan64
Copy link
Owner

TheDan64 commented Dec 16, 2024

Nah, it's fine and consistent as is 🤔

@TheDan64 TheDan64 self-requested a review December 16, 2024 03:23
@TheDan64
Copy link
Owner

That is such a weird choice...

@TheDan64
Copy link
Owner

Yeah, I guess 19-1 makes more sense

@stevefan1999-personal
Copy link
Author

stevefan1999-personal commented Dec 16, 2024

@TheDan64 okay, I also tested LLVM 19 integration with https://github.com/jamesmth/llvm-plugin-rs, so the basic examples provided in their repo do compile pretty well, so I will rename the feature from llvm19-0 to llvm19-1 tonight after running the tests and adding LLVM 18 and 19 back to Actions pipeline...

Keep in mind the new features in LLVM 19 aren't added yet, and so a follow up contribution for completing that puzzle would be a huge welcome.

@TyrsDev
Copy link

TyrsDev commented Dec 16, 2024

Yeah, I guess 19-1 makes more sense

I believe LLVM skipped 18.0 as well, and inkwell uses 18-0 for the major feature number, so it would be more consistent to use 19-0 now as well.

@stevefan1999-personal stevefan1999-personal marked this pull request as ready for review December 16, 2024 14:46
@stevefan1999-personal
Copy link
Author

Yeah, I guess 19-1 makes more sense

I believe LLVM skipped 18.0 as well, and inkwell uses 18-0 for the major feature number, so it would be more consistent to use 19-0 now as well.

No the problem is LLVM directly skipped 19.0 and even llvm-sys have to use 191 as the prefix number, so it is the matter of consistency in the library or in the actual LLVM naming scheme

@iamrecursion
Copy link

I have been able to integrate stevefan1999-personal@0c1e5dd into my project that relies on Inkwell, but stevefan1999-personal@87b7049 creates a number of compilation errors about undefined feature version llvm19-0.

For the version with the successful integration everything seems to be working swimmingly so far, with no regressions found by the test suite.

@stevefan1999-personal
Copy link
Author

I have been able to integrate stevefan1999-personal@0c1e5dd into my project that relies on Inkwell, but stevefan1999-personal@87b7049 creates a number of compilation errors about undefined feature version llvm19-0.

For the version with the successful integration everything seems to be working swimmingly so far, with no regressions found by the test suite.

That is strange, let me revert the actions changes tonight

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.

4 participants