This is a8f3c34556 ("ZJIT: Add missing guard on ivar access on T_{DATA,CLASS,MODULE}") but for the polymorphic implementation in HIR build.alanwu (Alan Wu)
Previously, we had none-sensical lines such as: ``` v15:CPtr[CPtr(0x1008)] = Const CPtr(0x1010) ``` Which was a contradiction as the pointer in the type specialization should match the pointer on the right hand side.alanwu (Alan Wu)
The transmute triggered a miscompilation on Rust 1.85.0, where the callback was "optimized" to unconditional go to a `SIGTRAP`ping instruction. While later Rust versions don't have the same miscompilation, it seems that this is also par...alanwu (Alan Wu)
Despite adding rb_ec_stack_check() to Rust code entry points, we've seen SystemStackError causing test failures due to debug builds consume too much native stack space. Let's use opt-level=1 so rustc/LLVM are more efficient with stack sp...alanwu (Alan Wu)
This reverts commit 77b803cfc833233a49b497a9342f16c9237833e6. There is a new NULL dereference in tool/test/testunit/test_sorting.rb that seem to have started with this commit.alanwu (Alan Wu)
T_DATA, T_MODULE, and T_CLASS objects can share the exact same shape. The shape on these objects give an index off of the fields array to get at the ivar. When two objects share the same shape, but differ in the T_* builtin type, however...alanwu (Alan Wu)