К слову сказать, для существующих регистровых VM тоже spilling используется далеко не всегда. В частности, в случае Lua VM в процессе трансляции просто проверяется, не превысило ли число слотов стека (виртуальных регистров) максимального значения, равного 255. Вместо тяжеловесной процедуры выгрузки регистров в память выдается соответствующее сообщение об ошибке пользователю.
"256 регистров хватит всем!" :)
мм, погоди, но у железа то не 256 регистиров