-
Notifications
You must be signed in to change notification settings - Fork 578
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
Some changes in preparation for the shrinker ir migration #3903
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Very nice! I've just pushed a tiny increment more space-saving by keying off the integer hash of the sorted tuple-key. Unfortunatly WeakValueDictionary
doesn't support dict
s as values, or I'd have used that instead of the LRUReusedCache
...
If you're happy with this, feel free to merge!
# nans with a sign opposite of both bounds previously gave us trouble | ||
# trying to use float clampers that didn't exist when drawing. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
oooooohhhhh, that's what was causing the flakes. nicely cursed!
33c65cb
to
63be68e
Compare
|
63be68e
to
f89db6f
Compare
Heh, just noticed that and reverted 😅 |
… into ir-shrinker-preparation
d'oh, |
(mostly) split from #3899, as promised.
This is a bunch of small independent changes bundled together, plus a big one in 1e76ce2. I've also included two small bug fixes I ran into (2b05fb8, 251cf43). It may be easiest to review this commit-by-commit.
I'm not super happy with the api design of modifying/copying
IRTree
s. I expect to iterate on this pretty quickly as I migrate future shrinking passes, so I haven't put too much effort into trying to get it perfect the first time. That said, if you have strong opinions on how this kind of thing should be designed, feel free to tear the current implementation apart!Conversations of note: