X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=deps%2Flightning%2Flib%2Fjit_x86.c;h=e3e1383469ba75a6914ec860295c84df36e2c043;hb=9723f27f9d28d90c8f54a9cd9e7203a87cc41b29;hp=c34a11714c99c4bbd2714c17fbb0b06cd47906ba;hpb=4a71579b757d3a2eb6902c84391f429838ad4912;p=pcsx_rearmed.git diff --git a/deps/lightning/lib/jit_x86.c b/deps/lightning/lib/jit_x86.c index c34a1171..e3e13834 100644 --- a/deps/lightning/lib/jit_x86.c +++ b/deps/lightning/lib/jit_x86.c @@ -1674,6 +1674,8 @@ _emit_code(jit_state_t *_jit) case_rrw(gt, _u); case_rrr(ne,); case_rrw(ne,); + case_rrr(movn,); + case_rrr(movz,); case_rr(mov,); case jit_code_movi: if (node->flag & jit_flag_node) { @@ -1696,6 +1698,11 @@ _emit_code(jit_state_t *_jit) case_rr(hton, _ui); #if __X64 && !__X64_32 case_rr(hton, _ul); +#endif + case_rr(bswap, _us); + case_rr(bswap, _ui); +#if __X64 && !__X64_32 + case_rr(bswap, _ul); #endif case_rr(ext, _c); case_rr(ext, _uc); @@ -2012,7 +2019,7 @@ _emit_code(jit_state_t *_jit) if (temp->flag & jit_flag_patch) jmpi(temp->u.w); else { - word = jmpi(_jit->pc.w); + word = jmpi_p(_jit->pc.w); patch(word, node); } } @@ -2027,9 +2034,12 @@ _emit_code(jit_state_t *_jit) temp = node->u.n; assert(temp->code == jit_code_label || temp->code == jit_code_epilog); - word = calli(temp->u.w); - if (!(temp->flag & jit_flag_patch)) + if (temp->flag & jit_flag_patch) + calli(temp->u.w); + else { + word = calli_p(_jit->pc.w); patch(word, node); + } } else calli(node->u.w);