Max Bernstein

Hash Date Message
3a365afaf555e3c1b6758df4431b8f659ff310a2 2021-02-26 Support memory operands to push
f63cdae3a30df5cd39fbbc064fef0bbc95fc9bd5 2021-02-27 Support memory operands to pop
8010d79bb429ed8dac5244e481ba5ddc108797a2 2024-12-09 YJIT: Only enable disassembly colors for tty (#12283)
43234138d6456ea2b9b65d2fc2c69a4fb769cef6 2025-02-06 Downgrade lockfile
dca2b1ddaf85e8751b76f74b044d0de279541c51 2025-02-06 Sketch HIR
1388f9291963aa725a9a5d874c64fd51a03166d4 2025-02-06 Add simple SSA
acf9491215e12334e0ceadf1458eb9ba707d87b7 2025-02-06 Add assert for Function
41786d355a464d990865084c7a8d5689fd233e9a 2025-02-06 Bring back Opnd
2b05fbd1b4ad30e878b9a5914507f2ec676b1885 2025-02-06 Add putobject
30e688ca14c5bcab58974cea468c24bdd55bee54 2025-02-06 Move IR to its own file
bb9b45a8ddb66001a75ff5aa46729f4f8d5e3f97 2025-02-06 Add setlocal and getlocal
f0954d1b2b7703e0d5dc89564caa4620305d16c1 2025-02-06 Add Putstring
26d1aa40292b33c3dc35f4ce8ccca10f1efbd5a1 2025-02-06 Add Intern opcode
21026abbd6d15135ea98358ba864ced2569c9d41 2025-02-06 Add Newarray
a0e2502e183cbc699cfd18922dfc9ee1fede320f 2025-02-06 Add other real yarv insns
db14f4a16b818d4709553af8da8f9875d997a809 2025-02-06 Add pop/dup
d091d6ea94e5a23346c30ea642d53bd00c90ee30 2025-02-06 Add swap
bd22748c6bfeb208a0024fee1e1d2a6891083ed4 2025-02-06 Add rb_insn_name to zjit
9b54848d66891a4bf1731bb398864f67a797f7b4 2025-02-06 Don't skip unknown opcodes
4b9455a859fc54dad4c2ad920f664021b2ae035b 2025-02-06 Add some INT2FIX
f4a011bc22572920cc7676b3f2e944c2838f0bbf 2025-02-06 Add multiple blocks
a8f1dad1e77270f9e4160e937a1d24ee07d19126 2025-02-06 Pretty print SSA, sort of
5f199c8f4b217a3b931fc5335fe79fe0e34ffd95 2025-02-06 Display Return, Add, and Const
518a387d6c5ca72eab09eaea8091234cd86132e8 2025-02-06 Pretty print fixnum
2ac7b85ea57a6f3e0252a080687df2874348cee0 2025-02-06 Fall back to ugly debug
f7e6a2cf36d83224e69c7c8d5e7d6d019f9d69da 2025-02-06 Fake CallInfo
bfae72b34b5dd0a1c3061b7f1fcf1d970eb71adf 2025-02-06 Display Send
94f572f6b49f9cd3373cfd8a9c79284e4df32d64 2025-02-06 Display Test and BranchEdge
b6ac5cdefd5ebf786c2f0fcefe248bc6a773d156 2025-02-06 Fix s/[add|lt]/send/g
a113df0cede23b37176a4ff179d54c451e05abd1 2025-02-06 Adjust the format of Send
4595c5d7143ead6d12d7c26daabf6d2cb1512e56 2025-02-06 Display NewArray, ArraySet
6a7578632295a3d6ad271c96b73e66c66b7f428b 2025-02-06 Add Snapshots and customizable function printer
ea98a5ae39087edd18a1225f3fe4614dfefe4fe6 2025-02-07 Display FrameState
9910fba282dfc19214d8a34b5f62c1e11d8a73ac 2025-02-07 More jump targets
fdb4e24d562b1cd9611e24dcac8293e9727eedba 2025-02-07 Split block after leave
4ff0109ffdbafedbd3d2ca489d0b0cc7c980916c 2025-02-07 De-duplicate block starts
9fa2a9aba8e6b6919c1fa403a45dd19797a522e3 2025-02-07 Don't make a new block after end of iseq
d0ee9bcd70db5fd5a59ce9ea2cd284990ab5f1fa 2025-02-07 Ignore other insns
e60f84af0bb32686617c5be1c69dba555201d1bb 2025-02-07 Add putself
03a56988e43b37dd29e9e2fc6e4ea69caaa28e6a 2025-02-07 Add opt_send_without_block
70f365708b34f4690951d3e355ce248dfda1b7d5 2025-02-07 Add opt_aset
2ce1888005f6f53aa7049e1d7bb7cf1dffa7d1a0 2025-02-07 Add setn
9cec9a5c1ebdaa83f9825371b954ed2ffe4aec32 2025-02-07 Fix setlocal/getlocal
cb8b6a34436273b57afe31ca20b3014a890fe862 2025-02-07 Fix opt_plus/opt_lt param order
251a7cfaf156122b42659485c77627a9a2cbc5b3 2025-02-07 Format nil VALUE opnd
2ae92c97f8f56394ec2f19d7747264ac1bdf5305 2025-02-07 Add opt_ltlt
1013ced144dc9d3507640394f4a442d10b44fa22 2025-02-07 Don't panic; err
3b97bcea13da6b21452bce4136ad6e54f28c9348 2025-02-07 Give context in StackUnderflow
948560ac5a05efaf17add7f4edd0ecf75e0bb5b2 2025-02-10 Traverse bytecode using block queue
464e74f20cd0190565b908d0b7a0a91fcef4c3f7 2025-02-10 Add branchif, jump
3372c137a73208a45ce99f805f4bf64551a89ddb 2025-02-11 Create FrameStates with block params
037e35ef590b93cfea8eedfc540f5b8a4b1c4ec9 2025-02-11 Display IfTrue and Jump
805c0baa39fad1c1e179f8cced237f254de02082 2025-02-11 Pass entire FrameState as block args
01fbd0d5eebf5918acacc10b12a6a88daf06ffd9 2025-02-11 Don't re-visit blocks
25b357294cdd45689835d21bdd13870b87739bb7 2025-02-11 Re-work CFG queueing
a9903686688203c5e0b76fbac5520a9d52106795 2025-02-11 Format some push_insn code
f4dc402e790ef9374baa8f5cf512d4b59703e646 2025-02-12 Add assert_matches! macro
94496cd86222dcb36fa63919b067fe3ec5393579 2025-02-12 Test setlocal/getlocal
3d7e88ce444faaffc62e34b8e012f50722a1aadf 2025-02-12 Clarify operand order in binops
d9d167423f51fac2c65aaf05ac9da6d1d8cfd885 2025-02-12 Fix locals propagation across edges
c35931b5d593d201c5efa8499af36872a9c62369 2025-02-12 Remove unused function
7017e2ba77b0b33f07c00eae475c42a60b547ccc 2025-02-12 Compile sample exception code in ZJIT
721b919e17efac2c5d9da250015f8c7d368fbf46 2025-02-12 Fix test for setlocal and getlocal
24cb2f604565eda9383cc523933e1b9b8e5beb7b 2025-02-12 Set up locals in FrameState at function entry
ccbf4441de3e7e99a456f699d8c05c77e2dd2e51 2025-02-13 Add comments for Test and Snapshot
25a36aaf5ed2c9318270d717113d17f77bd74d25 2025-02-19 Fix ep_offset locals math
fcaa7665c91ec12eae4955a9ef42fda17e41167a 2025-02-19 Remove Opnd
cdf16b73930db02492a7b5523eb5fcc294791bcb 2025-02-19 Add sample union-find implementation
778b67e50d396cb78efbf473a817961c86e32529 2025-02-19 Pretty-print Const
949ef70c5deb2c068619a0643f6cc43a7aa08114 2025-02-19 Make pattern match clearer with global
ec41dffd05f4f839c78cfd035fe0f2639b370644 2025-03-04 Add compact Type lattice
91114b9933efcbfc29b4ec58deea096bc8cf9e5d 2025-03-05 Write all bits in Type as easy-to-read names
d9a51eb8657bb06fcc95e174f4fde60f12018900 2025-03-05 Sort type bits at compile time for Display
bd41935b02c554589d29882d62a3a76c4afe2165 2025-03-05 Add std docs to crate docs
62adbdf247e92448f6a783e8c1f9d05d2e2f0406 2025-03-06 Share FrameState by storing it on Function
bbbf40de3fda4a234efa40ac2bfeb1fe3acb2436 2025-03-06 Store block params separately (https://github.com/Shopify/zjit/pull/35)
c5a93df555edddffd7f1d2fdd84374b8aaf222e2 2025-03-06 Rename Top to Any and Bottom to Empty
42cef565a405287c2b62501eafb0786d1f72e08f 2025-03-10 Add intraprocedural flow typing (https://github.com/Shopify/zjit/pull/23)
a412f9322cb3924f58bea88fd112816b9aeba815 2025-03-10 Remove reference to nonexistent function
1769c05e8d8e64e9df19bf410d8c1c71b97ffb3b 2025-03-10 Add diff_text to pretty-print IR differences in unit test failures
17ff0bc8d7ad32740f10e8b194ab9c15405f7867 2025-03-10 Compile FixnumLt (https://github.com/Shopify/zjit/pull/48)
033537fc5468817cf3efda5468c7c99d7254e95e 2025-03-11 Remove outdated TODO
c1d229c5058e3de05c30beec37ef51a8be466bab 2025-03-11 Remove more outdated TODOs
ca4d09137b7f8199d754c92eb7785599650bed6e 2025-03-12 Add union and predicates for testing if immediate (https://github.com/Shopify/zjit/pull/54)
4c694a4c15335792810ab5d162998a7db43fbe00 2025-03-12 Replace ...User with ...Subclass
9ca67c471d983e17d09cf0e594208ca9f3e19f5c 2025-03-12 Explicitly give function parameters types (https://github.com/Shopify/zjit/pull/52)
97f022b5e75f124f08fa44794f65fe1b112818eb 2025-03-13 Print Ruby exception in test utils
92b87ec53fe87978554793a4fc58e4b5ccb879db 2025-03-17 Convert send (with block) to HIR (https://github.com/Shopify/zjit/pull/67)
be874df1c4250d16701d0c3b8c169a96f0ed4dc4 2025-03-14 Print fake/stable addresses in HIR printer in tests
4a4845cec81d241ea5da03f3fbb15cb0f26ae2f1 2025-03-14 Fix type checking for strings, arrays, and hashes in the constant pool
f525cff5c852e7bf83a737b666bdeb946ded0f59 2025-03-14 Test builtin type inference
263a1f2bb39785cc6d414b6aa3ebbdde1e73f07a 2025-03-17 Use a more noticeable invalid pointer
eb3045f23d600a22c0261b2a3f9043fddf08c45e 2025-03-20 Make reverse post-order traversal iterative
a5330afed9ca07018c5c2109f9ed8bbcd4609426 2025-03-20 Fix another case of single-arm match
f4283c68bcd832ae1e222d2988e0d5157b75c50c 2025-03-21 Fix VALUE/isize conversion
102c48c85ff3f7dac70b3f12e553e7f035709879 2025-03-24 Don't compute predecessors for infer_types (https://github.com/Shopify/zjit/pull/78)
d9720eaf10ed1dda3c2a9b9b4f4b8254b33a0c3c 2025-03-25 Add constant folding pass (https://github.com/Shopify/zjit/pull/74)
556fda08640d69bf18f704f8983cf9bfe2bd9f7c 2025-03-25 Use expect-test for HIR tests
36d328eb9982face1698904052bfb3021fb5b1eb 2025-03-25 Make disassembly look nicer using InsnPrinter
52fe40f030f7b8639a85f72444f229f12287e6c2 2025-03-27 Default to BasicObject subclass if unknown
0a38850524bec6877fc197cf24abde4233f10b8d 2025-03-27 Only map pointers in tests
a86d187cda486a7c34d10476e57c2c6ffd36e050 2025-03-27 Add option to dump optimized HIR
49b8368aa685e18ce1bc64529de5f3311e74c597 2025-03-27 Print iseq names in HIR dumps
8220b91c211684d5ba8a4027deed3d51c02562d3 2025-03-27 Fix s/Raw/Debug/g
308cd59bf8d9a3d6141fae5931bad397020e7bc8 2025-03-27 Rewrite SendWithoutBlock to SendWithoutBlockDirect when possible
9dab8cd6334fbc78f565df9541c2a47b86260920 2025-03-31 Remove Option from get_class_name parameter
ad0d84f0f132874c605ee5f606b26d032147916b 2025-03-31 Move get_class_name into cruby
c0957d4b456132b9cb83597cfe880f9832d8624a 2025-04-02 Make Snapshot own FrameState objects
3e81d18636517002f9b3f175076fc2527f88e88f 2025-04-02 Reduce the number of Snapshots emitted
1826c2d23da6e8be7fb589e151beed7569e715bd 2025-04-02 Add dead code elimination pass
e9f6863e82e872f7e61f47510606335a79348cbd 2025-04-02 Make NewArray DCE-able
508a0496a5368dad99d7091e9adf9599621d4f2b 2025-04-02 Use find() in frame_state()
d8a6d43fa486f4f374f1e4d52ebadf27e3e478a6 2025-04-02 Fix opt_neq HIR codegen
97ba8d9c4dbfd8d277b0214aa1306356db586e77 2025-04-04 Insert PatchPoint after each Send
5f69e35be2804c8a72cff640374adf5f3b13ec47 2025-04-07 Add return_type to FnProperties and CCall
392c492b0707e9ed641665dfb1a98f9bcc5adb09 2025-04-07 Remove any object specialization in CCall optimization
0e766c9014dde24e71f565e95ff696f5ed1e7fe8 2025-04-07 Mark Guard* as depending on Snapshot in DCE
74f4d8b8a64d64be3d866166976d474fb217248e 2025-04-16 Display Snapshot's FrameState using Display (https://github.com/Shopify/zjit/pull/111)
87d00142d24fb73d0b1db6d208331d2cc9e6bf2a 2025-04-22 Make yjit team auto-review ZJIT PRs
9fc5a5dbedf70d6026ff8b76a57297b8021c5dcd 2025-04-22 ZJIT: Add option to dump LIR (#13139)
f36f792091df3c6bcdbc2f7793d47431c0df3e44 2025-04-23 Simplify fixnum guarding code
b437a3eeab340018a36694f079f37effe1aa0047 2025-04-23 Strength reduce sends on Fixnums in the optimizer instead of HIR builder
4c1f29fd58dd9ad9ad84cf25ac5b034869e42779 2025-04-23 Make PatchPoint(CalleeModifiedLocals) implicit
c2677f4d0ba7ef3741020c754a498e4582cfe708 2025-04-23 Make type_of use union-find
71166f60d95f0d78de5f151205ef6060de5e054e 2025-04-24 Add tests
9aed9e94867654b94d88be141026110d1f247bb5 2025-04-24 ZJIT: Fold Send into SendWithoutBlockDirect if we know the class statically (#13172)
871d07a20e3de00bdd15a2d522e9a4220889fe60 2025-04-25 ZJIT: Emit CCall if we know the type statically, not just from profiles (#13173)
e0545a02503983e8824d0fb5972c15d51093d927 2025-04-25 ZJIT: Bail out of HIR translation if we can't handle a send flag (#13182)
6052b12de484eb675fd3cdb6c6ff32a3e1b90b72 2025-04-28 ZJIT: Replace GetConstantPath with Const if the IC is not empty (#13183)
b42c8398ba84437cd6e96cbf6ccaf5ac5eff32b6 2025-04-28 Don't support blockarg in opt_new
10fd5a6357aceed4778bedf389e6a4cbf3ea294a 2025-04-29 Add tests
b970ff1850ba88717d11a9ced55fb83334b38ffe 2025-04-29 Default instruction output type to Any
0c44e5ab5efc3a54a0d18bf9c2a206c714e1d1c7 2025-04-28 Make sure to call find() on basic block arguments
73fdd90315a7038b060ec78ca0984951d13ccb4f 2025-04-30 ZJIT: Compile opt_new to slow-path SendWithoutBlock (#13216)
5411b504a5e75d553a423b4e5dbe63b9c45e906f 2025-04-30 ZJIT: Use RefCell to allow path compression in union-find (#13218)
23000c7339298d8888e161dcf11ad62c9053e180 2025-05-02 ZJIT: Parse opt_newarray_send into HIR (#13242)
925da368763487c495f47c9e7f17a252ff38a105 2025-05-02 Parse topn, opt_length, opt_size into HIR
5e534849940b34ea6590da053830cf1ef53ab475 2025-05-08 ZJIT: Temporarily revert path compression
6b10d40157b5287cd13169437800343165eae949 2025-05-15 ZJIT: Bail out of recursive compilation if we can't compile callee
5e01c0e4e2cf0130989b0a4cfc975645fb782324 2025-05-15 ZJIT: Remove unnecessary cloning
d9248856d2289d15ccdf196132711ab2c07e71c9 2025-05-16 ZJIT: Create more ergonomic type profiling API (#13339)
b08e20d34afb1cb99eeb97b4b7330290556511d3 2025-05-20 ZJIT: Allow DCE to remove some CCalls (#13363)
5a3f3f0917e92d2f6da8e7d31e618262714f6667 2025-05-22 ZJIT: Parse getinstancevariable, setinstancevariable into HIR (#13413)
f1fe3d809f842dec741cd88f256c1ddbb0fdd240 2025-05-22 ZJIT: Parse duphash into HIR
9583b7af8f4934397913e2197a1c40e91c1d853e 2025-05-22 ZJIT: Parse newhash into HIR
b7e751181eefbce272958d62c26e396ac16363c1 2025-05-23 ZJIT: Parse splatarray, concattoarray, pushtoarray into HIR (#13429)
0c29ff8e8f92a4511863aa2078296d955dfd465e 2025-05-23 ZJIT: Side-exit into the interpreter on unknown opcodes
a0df4cf6f16c68406aa32ad32047511e77bc0659 2025-05-23 ZJIT: Side-exit into the interpreter on unknown opt_newarray_send
d23fe287b647d342dbb26b5b714992823b068fe4 2025-05-23 ZJIT: Side-exit into the interpreter on unknown call types
15618b7707aefe9a601771d2aca986392d1fb775 2025-05-23 ZJIT: Mark SideExit as terminator
75b92c5cd6485a6b236101771f571cdf53cbd6a4 2025-05-23 ZJIT: Implement find for Defined
5905f71a3406dc60ccc3a3c9bf6159d9113808ee 2025-05-23 ZJIT: Add fast-paths for Array#length and Array#size
fa474a41e809822579bf8db6bbcb036a07c03774 2025-05-23 ZJIT: Parse opt_aref into HIR
87d340f0e129ecf807e3be35d67fda1ad6f40389 2025-05-23 ZJIT: Parse branchnil into HIR
9a1d6cc7991a856c4f4394572378570e01a61aaa 2025-05-28 ZJIT: Add CallableMethodEntry to type lattice (GH-13459)
65e9791c55c56eb8e6af2e39a2de3ab8068fa7d9 2025-05-30 ZJIT: Assert that we're compiling a specific YARV insn to HIR (#13471)
6a46ca31a7d4999e9788896445fbb53d049882ab 2025-06-05 ZJIT: Add codegen for uncached getinstancevariable
3246bbd32500bff86f32db0dd3cafdd648650afa 2025-06-05 ZJIT: Add codegen for uncached setinstancevariable
f208e017f200a7912cf172cfbb9849ed0214cf2f 2025-06-12 ZJIT: Add codegen for SideExit
0674f7dfb5fa79c5b2158c38f2ae80bc5692922a 2025-06-12 ZJIT: Only write LIR output of HIR instructions with output
9e33e043e50d015bce98f8bb41b331570e438328 2025-06-20 ZJIT: Add pass to clean CFG (#13655)
6602a08aa56768959fc1e5d3aed8dd31e0a0e39f 2025-06-21 ZJIT: Move ccall comments near ccall instructions (#13662)
3a9bf4a2ae1450bd8070296ed501f056830e25aa 2025-06-23 ZJIT: Optimize frozen array aref (#13666)
74e6bddf152af82716028ad16f2667c2f5d1a2b1 2025-06-23 ZJIT: Parse putspecialobject(VMCore) into Const (#13683)
aca692cd41d4cf74f5b5d35a703b55262ff4bcf8 2025-06-26 ZJIT: Disable profiling instructions before asserting opcodes in tests (#13720)