diff options
author | Mike Pall <mike> | 2010-02-23 17:22:12 +0100 |
---|---|---|
committer | Mike Pall <mike> | 2010-02-23 17:22:12 +0100 |
commit | d5c8fe4b90c54cbd03924d3eaf04d83dcf2f3cb8 (patch) | |
tree | 3db7c36d46daee158e8be4f5ed9e7251018ebe0a /src | |
parent | c1362dcac98bb73ff308e3453279d52e988a555b (diff) | |
download | luajit-d5c8fe4b90c54cbd03924d3eaf04d83dcf2f3cb8.tar.gz luajit-d5c8fe4b90c54cbd03924d3eaf04d83dcf2f3cb8.tar.bz2 luajit-d5c8fe4b90c54cbd03924d3eaf04d83dcf2f3cb8.zip |
Mark renamed registers as modified.
Diffstat (limited to 'src')
-rw-r--r-- | src/lj_asm.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lj_asm.c b/src/lj_asm.c index 3813a5d7..6c5e4659 100644 --- a/src/lj_asm.c +++ b/src/lj_asm.c | |||
@@ -817,7 +817,8 @@ static void ra_rename(ASMState *as, Reg down, Reg up) | |||
817 | as->cost[down] = 0; | 817 | as->cost[down] = 0; |
818 | lua_assert((down < RID_MAX_GPR) == (up < RID_MAX_GPR)); | 818 | lua_assert((down < RID_MAX_GPR) == (up < RID_MAX_GPR)); |
819 | lua_assert(!rset_test(as->freeset, down) && rset_test(as->freeset, up)); | 819 | lua_assert(!rset_test(as->freeset, down) && rset_test(as->freeset, up)); |
820 | rset_set(as->freeset, down); /* 'down' is free ... */ | 820 | ra_free(as, down); /* 'down' is free ... */ |
821 | ra_modified(as, down); | ||
821 | rset_clear(as->freeset, up); /* ... and 'up' is now allocated. */ | 822 | rset_clear(as->freeset, up); /* ... and 'up' is now allocated. */ |
822 | ra_noweak(as, up); | 823 | ra_noweak(as, up); |
823 | RA_DBGX((as, "rename $f $r $r", regcost_ref(as->cost[up]), down, up)); | 824 | RA_DBGX((as, "rename $f $r $r", regcost_ref(as->cost[up]), down, up)); |