quakeforge/tools/qfcc
Bill Currie a3aebc983b [qfcc] Add dependency edges for moved labels
When moving an identifier label from one node to another, the first node
must be evaluated before the second node, which the edge guarantees.
However, code for swapping two variables

    t = a; a = b; b = t;

creates a dependency cycle. The solution is to create a new leaf node
for the source operand of the assignment. This fixes the swap.r test
without pessimizing postop code.

This takes care of the core problem in #3, but there is still room for
improvement in that the load/store can be combined into a move.
2021-06-29 14:42:16 +09:00
..
doc [qfcc] Fix a typo in the man page 2021-02-09 15:02:22 +09:00
include [qfcc] Keep track of reachable dag nodes 2021-06-29 09:41:03 +09:00
source [qfcc] Add dependency edges for moved labels 2021-06-29 14:42:16 +09:00
test [qfcc] Add dependency edges for moved labels 2021-06-29 14:42:16 +09:00
AUTHORS more mailing list corrections 2003-07-12 21:50:22 +00:00
Makemodule.am [build] Move to non-recursive make 2020-06-25 11:35:37 +09:00
TODO Throw away function parameter type alias info 2020-02-26 17:46:53 +09:00