]> git.ipfire.org Git - thirdparty/LuaJIT.git/commitdiff
PPC: Fix write barrier in USETV/USETS.
authorMike Pall <mike>
Mon, 24 Oct 2011 22:29:10 +0000 (00:29 +0200)
committerMike Pall <mike>
Mon, 24 Oct 2011 22:30:41 +0000 (00:30 +0200)
src/buildvm_ppc.dasc
src/buildvm_ppc.h

index aa133dcc982990157663d84b2576d3cac578e657..0bcc5ad7e9024dd1828b0a331c9619d62195e05a 100644 (file)
@@ -3382,7 +3382,6 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
     |    addi RA, RA, offsetof(GCfuncL, uvptr)
     |   lfdux f0, RD, BASE
     |  lwzx UPVAL:RB, LFUNC:RB, RA
-    |  ins_next1
     |  lbz TMP3, UPVAL:RB->marked
     |   lwz CARG2, UPVAL:RB->v
     |  andi. TMP3, TMP3, LJ_GC_BLACK   // isblack(uv)
@@ -3395,7 +3394,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
     |   subi TMP2, TMP2, (LJ_TISNUM+1)
     |  bne >2                          // Upvalue is closed and black?
     |1:
-    |  ins_next2
+    |  ins_next
     |
     |2:  // Check if new value is collectable.
     |  cmplwi TMP2, LJ_TISGCV - (LJ_TISNUM+1)
@@ -3417,7 +3416,6 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
     |    addi RA, RA, offsetof(GCfuncL, uvptr)
     |   lwzx STR:TMP1, KBASE, TMP1     // KBASE-4-str_const*4
     |  lwzx UPVAL:RB, LFUNC:RB, RA
-    |  ins_next1
     |  lbz TMP3, UPVAL:RB->marked
     |   lwz CARG2, UPVAL:RB->v
     |  andi. TMP3, TMP3, LJ_GC_BLACK   // isblack(uv)
@@ -3428,7 +3426,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
     |   stw TMP0, 0(CARG2)
     |  bne >2
     |1:
-    |  ins_next2
+    |  ins_next
     |
     |2:  // Check if string is white and ensure upvalue is closed.
     |  andi. TMP3, TMP3, LJ_GC_WHITES  // iswhite(str)
index 0bc8229f8bce6ac41fe12f9cdc3d084039d8c61a..ea35c99093296000d16fcecfe380a9d77aa7bf95 100644 (file)
@@ -5766,8 +5766,6 @@ static const unsigned int build_actionlist[7577] = {
 0x00098200,
 0x7c0c74ee,
 0x7d4aa02e,
-0x80f00000,
-0x3a100004,
 0x88ca0000,
 0x00098200,
 0x808a0000,
@@ -5786,6 +5784,8 @@ static const unsigned int build_actionlist[7577] = {
 0x40820000,
 0x00050802,
 0x0006000b,
+0x80f00000,
+0x3a100004,
 0x54e815ba,
 0x7c11402e,
 0x7c0903a6,
@@ -5822,8 +5822,6 @@ static const unsigned int build_actionlist[7577] = {
 0x00098200,
 0x7d0f402e,
 0x7d4aa02e,
-0x80f00000,
-0x3a100004,
 0x88ca0000,
 0x00098200,
 0x808a0000,
@@ -5841,6 +5839,8 @@ static const unsigned int build_actionlist[7577] = {
 0x40820000,
 0x00050802,
 0x0006000b,
+0x80f00000,
+0x3a100004,
 0x54e815ba,
 0x7c11402e,
 0x7c0903a6,