| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
|
Conflicts already 😲 JIT is moving so fast. |
Sorry, something went wrong.
There was a problem hiding this comment.
Awesome, another nice simplification. Thanks!
Sorry, something went wrong.
Yeah there're like 5 active contributors sending stuff to the JIT almost daily. It's a happy problem :). |
Sorry, something went wrong.
|
@NekoAsakura I would like to add you to the contributors in the What's New page. Would you be alright with that and do you mind if I use your Neko Asakura handle? |
Sorry, something went wrong.
That'd be lovely, thanks! Would it be alright to use a different name though? |
Sorry, something went wrong.
Yeah of course. |
Sorry, something went wrong.
|
I'll open the PR to add new JIT contributors. Give me a moment. Will tag you in it. |
Sorry, something went wrong.
| ("_SWAP", "3, 0"), | ||
| ("_SWAP", "2, 0")], |
There was a problem hiding this comment.
This seems a little inefficient, but I think it should be fine as it's just a register to register move with stack caching in the JIT.
Sorry, something went wrong.
There was a problem hiding this comment.
Are there any better practices for this?
Sorry, something went wrong.
There was a problem hiding this comment.
don't think so: no matter what you do, you probably have to shuffle the register anyways. We can remove some movs, but I doubt that will speed up things by that much on modern CPUs considering register renaming is a thing.
Sorry, something went wrong.
There was a problem hiding this comment.
Sound about right.
Sorry, something went wrong.
|
I verified that for the following: def constant():
for _ in range(4096):
a = 1
b = 2
c = a + b
constant()
We emit the following: 25 OPTIMIZED: _LOAD_CONST_INLINE_BORROW_r23 (0, target=21, operand0=0x5fdb9ad03c88, operand1=0) 26 OPTIMIZED: _SWAP_3_r33 (3, target=21, operand0=0, operand1=0) 27 OPTIMIZED: _SWAP_2_r33 (2, target=21, operand0=0, operand1=0) Which means everything is in registers. So that's great. |
Sorry, something went wrong.
Would you like me to decompose _POP_TWO as well? I see op_without_pop already peels it during refcount elimination, so we'd just be making that explicit. |
Sorry, something went wrong.
Yes please, the op elimination pass should be as simple as possible. We want this so any optimizations we do in the future are easier and more effective. |
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
Uh oh!
There was an error while loading. Please reload this page.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.