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

cherry-pick of more bugfixes from fixing #265 #19388

Merged
merged 4 commits into from
Nov 29, 2016
Merged

Conversation

vtjnash
Copy link
Member

@vtjnash vtjnash commented Nov 22, 2016

this is a backport of additional fixes I had made to avoid segfaults on my #265-fix branch (#17057)

@tkelman
Copy link
Contributor

tkelman commented Nov 24, 2016

Are there tests for any of these?

@tkelman
Copy link
Contributor

tkelman commented Nov 24, 2016

Also it would be preferable if we could use the term "backport" to mean exactly one thing - if the target branch is still master and the PR they come from hasn't been merged yet, then this is different from what we use the "backport pending" labels to track. Better to call this cherry pick or something distinct so it doesn't look related to release tracking.

and make the code a bit more flexible to be able to handle these oddball cases more easily in the future
otherwise, it sometimes has been pointing at free'd memory
and we have just been hoping nothing tries to look at it
@vtjnash vtjnash changed the title backports of more bugfixes from fixing #265 cherry-pick of more bugfixes from fixing #265 Nov 25, 2016
@vtjnash
Copy link
Member Author

vtjnash commented Nov 28, 2016

bump

@JeffBezanson JeffBezanson merged commit 5a1ae33 into master Nov 29, 2016
@StefanKarpinski StefanKarpinski deleted the jn/backports265.5 branch November 29, 2016 22:48
vtjnash added a commit that referenced this pull request Dec 3, 2016
vtjnash added a commit that referenced this pull request Dec 3, 2016
when merging two frames (such as when handling exception frames),
most of the time new is old, but the computation here is
exponential in the number of variables so we want the inner computation
here to be ultra-fast in the common case

fix #15346

(cherry-picked from ae680e8, PR #19388)
vtjnash added a commit that referenced this pull request Dec 3, 2016
only the variable changes need to be propagated on each step to the
exception frame (as the whole frame was already synced when handling `Expr(:enter)`)

this eliminates an unnecessary exponential pass for handling exception frames

along the way, this replaces `(e::Slot).id` with a manually
expanded version `slot_id(e)`. Since Slot is a abstract variable,
Inference has no way to directly track that the set of subtypes won't
change, so it had to be pessimistic and assume that the value was Any.
Adding a function barrier removes that difficulty.

(cherry-picked from d25e94b, PR #19388)
@tkelman
Copy link
Contributor

tkelman commented Mar 1, 2017

This doesn't cherry-pick cleanly on release-0.5. If these are fixing anything important, please open a PR against tk/backports-0.5.1.

@StefanKarpinski
Copy link
Member

Since #265 wasn't fixed on 0.5, I would imagine this is not relevant?

@tkelman
Copy link
Contributor

tkelman commented Mar 2, 2017

this is a confusingly named pr, it's miscellaneous bugfixes that jameson did while working on 265, but split out to a separate branch here

@vtjnash
Copy link
Member Author

vtjnash commented Mar 2, 2017

Right. This is split out because it wasn't #265-related, even though they were developed during that PR

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants