Skip to content

Commit

Permalink
Fix ExtractNarrowingSaturateScalar, ExtractNarrowingSaturateUnsignedS…
Browse files Browse the repository at this point in the history
…calar
  • Loading branch information
imhameed committed Mar 9, 2021
1 parent f31aec1 commit 12fd7c9
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions src/mono/mono/mini/mini-llvm.c
Original file line number Diff line number Diff line change
Expand Up @@ -5098,9 +5098,9 @@ scalar_op_from_vector_op_process_args (ScalarOpFromVectorOpCtx *sctx, LLVMValueR
static LLVMValueRef
scalar_op_from_vector_op_process_result (ScalarOpFromVectorOpCtx *sctx, LLVMValueRef result)
{
if (!sctx->needs_fake_scalar_op)
return vector_from_scalar_ty (sctx->ctx, sctx->return_type, result);
return keep_lowest_element (sctx->ctx, result);
if (sctx->needs_fake_scalar_op)
return keep_lowest_element (sctx->ctx, result);
return vector_from_scalar_ty (sctx->ctx, sctx->return_type, result);
}

static void
Expand Down Expand Up @@ -9916,6 +9916,7 @@ process_bb (EmitContext *ctx, MonoBasicBlock *bb)
unsigned int argelems = LLVMGetVectorSize (arg_t);
LLVMValueRef arg = undef_upper_elements (ctx, LLVMVectorType (argelem_t, argelems * 2), lhs);
result = call_overloaded_intrins (ctx, iid, ovr_tag, &arg, "arm64_xnarrow_scalar");
result = keep_lowest_element (ctx, result);
}
values [ins->dreg] = result;
break;
Expand Down

0 comments on commit 12fd7c9

Please sign in to comment.