-
-
Save timo/414f465df7efa622148b to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| diff --git a/src/jit/emit_x64.dasc b/src/jit/emit_x64.dasc | |
| index 8e83090..256f6b5 100644 | |
| --- a/src/jit/emit_x64.dasc | |
| +++ b/src/jit/emit_x64.dasc | |
| @@ -929,6 +929,17 @@ void MVM_jit_emit_primitive(MVMThreadContext *tc, MVMJitGraph *jg, | |
| |2: | |
| break; | |
| } | |
| + case MVM_OP_iscont: { | |
| + MVMint16 dst = ins->operands[0].reg.orig; | |
| + MVMint16 src = ins->operands[1].reg.orig; | |
| + | mov TMP1, WORK[src]; | |
| + | test TMP1, TMP1; | |
| + | cmovnz TMP2, OBJECT:TMP1->st; | |
| + | cmovnz TMP1, STABLE:TMP2->container_spec; | |
| + | test TMP1, TMP1; | |
| + | setnz qword WORK[dst]; | |
| + break; | |
| + } | |
| case MVM_OP_sp_namedarg_used: { | |
| MVMuint16 param = ins->operands[0].lit_i16; | |
| | mov TMP1, FRAME->params.named_used; | |
| diff --git a/src/jit/graph.c b/src/jit/graph.c | |
| index c02bb08..5a0864b 100644 | |
| --- a/src/jit/graph.c | |
| +++ b/src/jit/graph.c | |
| @@ -674,6 +674,7 @@ static MVMint32 jgb_consume_ins(MVMThreadContext *tc, JitGraphBuilder *jgb, | |
| case MVM_OP_getcode: | |
| case MVM_OP_sp_fastcreate: | |
| case MVM_OP_decont: | |
| + case MVM_OP_iscont: | |
| case MVM_OP_sp_namedarg_used: | |
| case MVM_OP_sp_findmeth: | |
| case MVM_OP_hllboxtype_i: |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment