alexcrichton transferred Issue #597:
Currently,
stack_storeandstack_loadare legalized intostack_addrfollowed by plainstoreandload, producing code like this:lea rax, qword ptr [rsp + 8] mov qword ptr [rax], rdiWe really want to just emit this:
mov qword ptr [rsp + 8], rdiOptions include:
- Add encoding rules for
stack_loadandstack_store, making them legal. This is straightforward, but if we later want to extend this to allow extending loads and narrowing stores, we'll need a bunch more instructions.- Extend
load_complex/store_complexto have a way represent a base pointer which is the stack pointer, and then foldstack_addrintoload/store.
Last updated: Dec 06 2025 at 05:03 UTC