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

Make BoundsError lazy and move Memory boundscheck to Julia #56167

Draft
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

oscardssmith
Copy link
Member

This is a revival of #43738 with a lot of changes. The biggest by far is that with this version of the PR, I'm trying to get the BoundsError to semantically not escape the input argument so that LLVM escape analysis doesn't see bounds error construction as a potential escape (motivated by #55913). That said, this will likely significantly increase IR size, so I'm not sure if it is worth it or if this is a good tradeoff...

@@ -347,12 +347,39 @@ struct ErrorException <: Exception
msg::AbstractString
end

import .Intrinsics: ult_int
struct Summarized
Copy link
Member

Choose a reason for hiding this comment

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

Summary?

struct Summarized
desc::Union{Nothing,String}
size::Union{Nothing, Tuple{Vararg{Int}}}
atype::Type
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
atype::Type
atype::DataType

@nsajko nsajko added the arrays [a, r, r, a, y, s] label Oct 15, 2024
@giordano giordano marked this pull request as draft October 15, 2024 11:22
@giordano giordano changed the title draft: Make BoundsError lazy and move Memory boundscheck to Julia Make BoundsError lazy and move Memory boundscheck to Julia Oct 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
arrays [a, r, r, a, y, s]
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants