author | pcpa <paulo.cesar.pereira.de.andrade@gmail.com> | 2014年10月14日 17:04:13 -0300 |
---|---|---|
committer | pcpa <paulo.cesar.pereira.de.andrade@gmail.com> | 2014年10月14日 17:04:13 -0300 |
commit | 20a2f1f9c539c6b7509f9a32ef926b9b9dd98cc9 (patch) | |
tree | fa08b894c7fea14e089d6e11c36dd5fa721983bc /lib/jit_mips.c | |
parent | 1d75fe625af6020f88b7977810ed7a66c47d7bf3 (diff) | |
download | lightning-20a2f1f9c539c6b7509f9a32ef926b9b9dd98cc9.tar.gz |
-rw-r--r-- | lib/jit_mips.c | 20 |
diff --git a/lib/jit_mips.c b/lib/jit_mips.c index 88f128c..3eec489 100644 --- a/lib/jit_mips.c +++ b/lib/jit_mips.c @@ -1343,15 +1343,19 @@ _emit_code(jit_state_t *_jit) jmpr(rn(node->u.w)); break; case jit_code_jmpi: - temp = node->u.n; - assert(temp->code == jit_code_label || - temp->code == jit_code_epilog); - if (temp->flag & jit_flag_patch) - jmpi(temp->u.w); - else { - word = jmpi(_jit->pc.w); - patch(word, node); + if (node->flag & jit_flag_node) { + temp = node->u.n; + assert(temp->code == jit_code_label || + temp->code == jit_code_epilog); + if (temp->flag & jit_flag_patch) + jmpi(temp->u.w); + else { + word = jmpi(_jit->pc.w); + patch(word, node); + } } + else + jmpi(node->u.w); break; case jit_code_callr: callr(rn(node->u.w)); |