diff --git a/src/platform/gba/asm/flush.s b/src/platform/gba/asm/flush.s index 6841c6d2..97ab1cc3 100644 --- a/src/platform/gba/asm/flush.s +++ b/src/platform/gba/asm/flush.s @@ -176,7 +176,9 @@ flush_asm: .draw: // r0 = flags // r1 = ptr - adr lr, .next_face + tst face, face + adrne lr, .loop_list + adreq lr, .next_ot tst flags, #FACE_CLIPPED bne drawPoly @@ -209,7 +211,9 @@ flush_asm: // r0 = flags // r1 = ptr - adr lr, .next_face + tst face, face + adrne lr, .loop_list + adreq lr, .next_ot // gui cmp type, #FACE_TYPE_SPRITE @@ -227,10 +231,6 @@ flush_asm: str uv, [ptr, #(VERTEX_T + VERTEX_SIZEOF * 1)] b rasterize_asm -.next_face: - tst face, face - bne .loop_list - .next_ot: cmp list, OT bge .loop_ot