mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2024-11-26 06:10:56 +00:00
93840d9892
Since the call instruction in the Ruamoko ISA specifies the destination of the return value of the called function, it is much like any expression type instruction in that the def referenced by its c operand is both defined and killed by the instruction. However, unlike other instructions, it really has many pseudo-operands: the arguments placed on the stack. The problem is that when one of the arguments is also the destination of the return value, the dags code wants to use the stack argument as it was the last use of the real argument. Thus, instead of using the value of the child node for the result, use the value label attached to the call node (there should be only one such label). This fixes iterfunc, typedef, zerolinker and vkgen when optimizing. Now all but the double tests and return postop tests pass (and the retun postop test is not related to the Ruamoko ISA, so fails either way). |
||
---|---|---|
.. | ||
doc | ||
include | ||
source | ||
test | ||
AUTHORS | ||
Makemodule.am | ||
TODO |