diff options
-rw-r--r-- | doc/ext_ffi_semantics.html | 1 | ||||
-rw-r--r-- | src/lj_crecord.c | 6 |
2 files changed, 3 insertions, 4 deletions
diff --git a/doc/ext_ffi_semantics.html b/doc/ext_ffi_semantics.html index 498bbbb4..36c3be32 100644 --- a/doc/ext_ffi_semantics.html +++ b/doc/ext_ffi_semantics.html | |||
@@ -1140,7 +1140,6 @@ The following operations are currently not compiled and may exhibit | |||
1140 | suboptimal performance, especially when used in inner loops: | 1140 | suboptimal performance, especially when used in inner loops: |
1141 | </p> | 1141 | </p> |
1142 | <ul> | 1142 | <ul> |
1143 | <li>Array/<tt>struct</tt> copies and bulk initializations.</li> | ||
1144 | <li>Bitfield accesses and initializations.</li> | 1143 | <li>Bitfield accesses and initializations.</li> |
1145 | <li>Vector operations.</li> | 1144 | <li>Vector operations.</li> |
1146 | <li>Table initializers.</li> | 1145 | <li>Table initializers.</li> |
diff --git a/src/lj_crecord.c b/src/lj_crecord.c index 47ae65b4..6a22544a 100644 --- a/src/lj_crecord.c +++ b/src/lj_crecord.c | |||
@@ -526,11 +526,11 @@ static TRef crec_ct_ct(jit_State *J, CType *d, CType *s, TRef dp, TRef sp, | |||
526 | 526 | ||
527 | /* Destination is an array. */ | 527 | /* Destination is an array. */ |
528 | case CCX(A, A): | 528 | case CCX(A, A): |
529 | goto err_nyi; | ||
530 | |||
531 | /* Destination is a struct/union. */ | 529 | /* Destination is a struct/union. */ |
532 | case CCX(S, S): | 530 | case CCX(S, S): |
533 | goto err_nyi; | 531 | if (dp == 0) goto err_conv; |
532 | crec_copy(J, dp, sp, lj_ir_kint(J, dsize), d); | ||
533 | break; | ||
534 | 534 | ||
535 | default: | 535 | default: |
536 | err_conv: | 536 | err_conv: |