genMachOp_slow _ (MO_V_Insert l w) [val, elt, idx] = runExprData $ do
    vval <- exprToVarW val
    velt <- exprToVarW elt
    vidx <- exprToVarW idx
    [vval'] <- castVarsW [(vval, ty)]
    doExprW ty $ Insert vval' velt vidx
  where
    ty = LMVector l (widthToLlvmInt w)
genMachOp_slow _ (MO_V_Insert l w) [val, elt, idx] = runExprData $ do
    vval <- exprToVarW val
    velt <- exprToVarW elt
    vidx <- exprToVarW idx
    [vval'] <- castVarsW [(vval, ty)]
    doExprW ty $ Insert vval' velt vidx
  where
    ty = LMVector l (widthToLlvmInt w)
genMachOp_slow _ (MO_V_Insert l w) [val, elt, idx] = runExprData $ do
    vval <- exprToVarW val
    velt <- exprToVarW elt
    vidx <- exprToVarW idx
    [vval'] <- castVarsW [(vval, ty)]
    doExprW ty $ Insert vval' velt vidx
  where
    ty = LMVector l (widthToLlvmInt w)