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

Document and clean up CodegenParams #51140

Merged
merged 1 commit into from Sep 2, 2023
Merged

Document and clean up CodegenParams #51140

merged 1 commit into from Sep 2, 2023

Conversation

Keno
Copy link
Member

@Keno Keno commented Sep 1, 2023

The latter was a codegen option that I added, but eventually ended up not using anywhere, so remove it for the time being. That said, I may end up in a situation where I need it again in the very near future, so I may end up eating my words here, but if I need to put it back, I'll include a test at least ;).

- Add documentation to CodegenParams fields per request in #51123
- Fix compare_cgparams which hadn't been updated for recent additions
- Remove unused and untested generic_context

The latter was a codegen option that I added, but eventually ended
up not using anywhere, so remove it for the time being. That said,
I may end up in a situation where I need it again in the very near
future, so I may end up eating my words here, but if I need to put
it back, I'll include a test at least ;).
@Keno Keno requested review from vtjnash and maleadt September 1, 2023 06:24
@brenhinkeller brenhinkeller added the compiler:codegen Generation of LLVM IR and native code label Sep 1, 2023
gcstack_arg::Cint

"""
If enabled, use the Julia PLT mechanism to support lazy-resolution of `ccall`
Copy link
Sponsor Member

Choose a reason for hiding this comment

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

LGTM

As a side-note: The PLT mechanism here is equivalent to using an ifunc alias (where the target is a weak symbol or dlsym result), so it is not strictly just for the feature, we just don't trust that the platform linker will handle those well, and we know it is possible to always implement them better for any environment: https://maskray.me/blog/2021-01-18-gnu-indirect-function#alternative

@vtjnash vtjnash added domain:docs This change adds or pertains to documentation status:merge me PR is reviewed. Merge when all tests are passing labels Sep 1, 2023
@DilumAluthge DilumAluthge merged commit 6c1168a into master Sep 2, 2023
9 checks passed
@DilumAluthge DilumAluthge deleted the kf/cgparamdocs branch September 2, 2023 10:10
@DilumAluthge DilumAluthge removed the status:merge me PR is reviewed. Merge when all tests are passing label Sep 2, 2023
Copy link
Sponsor Member

@aviatesk aviatesk left a comment

Choose a reason for hiding this comment

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

Great to see this documented.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
compiler:codegen Generation of LLVM IR and native code domain:docs This change adds or pertains to documentation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants