-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
make memorynew
intrinsic
#56803
base: master
Are you sure you want to change the base?
make memorynew
intrinsic
#56803
Conversation
69d40b6
to
4ec80ce
Compare
memorynew
intrinsic (part 1)
This is much worse than the current implementation btw. For this you at least need a specialized builtin implementation in codegen, even if it just forwards the arguments. |
Co-authored-by: Jameson Nash <[email protected]> Co-authored-by: Jeff Bezanson <[email protected]> Co-authored-by: Gabriel Baraldi <[email protected]>
4ec80ce
to
aeaf45e
Compare
To prevent this PR from being a regression (and to fix the LLVM names test, I think the right way to go is to add the dynamic length version of codegen to this PR. It always goes through C (so LLVM won't be able to delete the whole allocation), but this way this PR on it's own is ~3ns faster to allocate arrays than master without the glory/risk of LLVM deleting the allocation entirely. |
@KristofferC I don't think this PR needs a pkgeval. It doesn't have any of the risks of #55913 wrt weird miscompiles. (that said, if you disagree, feel free to run it). |
memorynew
intrinsic (part 1)memorynew
intrinsic
Attempt to split up #55913 into 2 pieces. This piece now only adds the
memorynew
intrinsic without any of the optimizations enabled by #55913. As such, this PR should be ready to merge now. (and will make #55913 smaller and simpler)