You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A.
All @asserts should be exceptional, and since it's a macro already, it should outline (@noinline) automatically, as was manually done here (to avoid 3x speed regression):
B.
I was looking into optimizing factorial myself, and think in general throws should be outlined too, i.e. all preconditions. For now A. is a low hanging-fruit I think. I'm not sure, possibly after A. is done, throws can be implemented with asserts, getting B for free?
C.
Maybe there are complications when there are two or more asserts and/or throws, still I doubt solving A. and/or B. would be slower then. However possibly in that case something even better could be done?
The text was updated successfully, but these errors were encountered:
Duplicate of #29688. For assert though, I think it could be implemented entirely inside the macro, since the macro knows all the code that needs to run leading up to the throw (constructing the exception object).
A.
All
@assert
s should be exceptional, and since it's a macro already, it should outline (@noinline
) automatically, as was manually done here (to avoid 3x speed regression):https://github.com/JuliaLang/julia/pull/34237/files
B.
I was looking into optimizing factorial myself, and think in general throws should be outlined too, i.e. all preconditions. For now A. is a low hanging-fruit I think. I'm not sure, possibly after A. is done, throws can be implemented with asserts, getting B for free?
C.
Maybe there are complications when there are two or more asserts and/or throws, still I doubt solving A. and/or B. would be slower then. However possibly in that case something even better could be done?
The text was updated successfully, but these errors were encountered: