diff options
Diffstat (limited to 'src/lj_asm_ppc.h')
-rw-r--r-- | src/lj_asm_ppc.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/lj_asm_ppc.h b/src/lj_asm_ppc.h index 5fd35d2e..d7d743a6 100644 --- a/src/lj_asm_ppc.h +++ b/src/lj_asm_ppc.h | |||
@@ -1915,7 +1915,7 @@ static void asm_head_root_base(ASMState *as) | |||
1915 | } | 1915 | } |
1916 | 1916 | ||
1917 | /* Coalesce BASE register for a side trace. */ | 1917 | /* Coalesce BASE register for a side trace. */ |
1918 | static RegSet asm_head_side_base(ASMState *as, IRIns *irp, RegSet allow) | 1918 | static Reg asm_head_side_base(ASMState *as, IRIns *irp) |
1919 | { | 1919 | { |
1920 | IRIns *ir = IR(REF_BASE); | 1920 | IRIns *ir = IR(REF_BASE); |
1921 | Reg r = ir->r; | 1921 | Reg r = ir->r; |
@@ -1924,15 +1924,15 @@ static RegSet asm_head_side_base(ASMState *as, IRIns *irp, RegSet allow) | |||
1924 | if (rset_test(as->modset, r) || irt_ismarked(ir->t)) | 1924 | if (rset_test(as->modset, r) || irt_ismarked(ir->t)) |
1925 | ir->r = RID_INIT; /* No inheritance for modified BASE register. */ | 1925 | ir->r = RID_INIT; /* No inheritance for modified BASE register. */ |
1926 | if (irp->r == r) { | 1926 | if (irp->r == r) { |
1927 | rset_clear(allow, r); /* Mark same BASE register as coalesced. */ | 1927 | return r; /* Same BASE register already coalesced. */ |
1928 | } else if (ra_hasreg(irp->r) && rset_test(as->freeset, irp->r)) { | 1928 | } else if (ra_hasreg(irp->r) && rset_test(as->freeset, irp->r)) { |
1929 | rset_clear(allow, irp->r); | ||
1930 | emit_mr(as, r, irp->r); /* Move from coalesced parent reg. */ | 1929 | emit_mr(as, r, irp->r); /* Move from coalesced parent reg. */ |
1930 | return irp->r; | ||
1931 | } else { | 1931 | } else { |
1932 | emit_getgl(as, r, jit_base); /* Otherwise reload BASE. */ | 1932 | emit_getgl(as, r, jit_base); /* Otherwise reload BASE. */ |
1933 | } | 1933 | } |
1934 | } | 1934 | } |
1935 | return allow; | 1935 | return RID_NONE; |
1936 | } | 1936 | } |
1937 | 1937 | ||
1938 | /* -- Tail of trace ------------------------------------------------------- */ | 1938 | /* -- Tail of trace ------------------------------------------------------- */ |