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

Split LibLLVM by C headers #13948

Merged

Conversation

HertzDevil
Copy link
Contributor

Currently, src/llvm/lib_llvm.cr puts all LLVM bindings in a single, unorganized lib. This PR splits that file according to how the functions are originally laid out in LLVM's C headers.

All the funs' order, parameter names and types should now match the original headers as well, e.g. Bool and Char are now used consistently for all LLVMBools and chars in the headers.

Copy link
Member

@straight-shoota straight-shoota left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I didn't check all transformations in detail, but it looks good and as long as it works, everything should be fine, right?

I just have a tiny suggestion for improvement.

src/llvm/lib_llvm/initialization.cr Outdated Show resolved Hide resolved
@straight-shoota
Copy link
Member

Specs are failing on macOS, so this still needs some work.

@HertzDevil HertzDevil marked this pull request as draft November 4, 2023 10:34
@HertzDevil HertzDevil marked this pull request as ready for review November 4, 2023 10:40
@straight-shoota straight-shoota added this to the 1.11.0 milestone Nov 6, 2023
@straight-shoota straight-shoota merged commit de7d333 into crystal-lang:master Nov 7, 2023
53 of 55 checks passed
@HertzDevil HertzDevil deleted the refactor/split-lib-llvm branch November 9, 2023 05:59
Blacksmoke16 pushed a commit to Blacksmoke16/crystal that referenced this pull request Dec 11, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants