Set the new vec fill-size on the compiler side, as in rustboot. Un-XFAIL first 3 vec tests.
This commit is contained in:
parent
734c190918
commit
a3cbdc661c
@ -558,6 +558,9 @@ TEST_XFAILS_SELF := $(filter-out \
|
||||
u8-incr-decr.rs \
|
||||
uint.rs \
|
||||
unit.rs \
|
||||
vec.rs \
|
||||
vec-in-tup.rs \
|
||||
vec-late-init.rs \
|
||||
while-and-do-while.rs \
|
||||
writealias.rs \
|
||||
) \
|
||||
|
@ -1376,6 +1376,7 @@ fn trans_index(@block_ctxt cx, &ast.span sp, @ast.expr base,
|
||||
|
||||
auto lim = ix.bcx.build.GEP(v, vec(C_int(0), C_int(abi.vec_elt_fill)));
|
||||
lim = ix.bcx.build.Load(lim);
|
||||
|
||||
auto bounds_check = ix.bcx.build.ICmp(lib.llvm.LLVMIntULT,
|
||||
scaled_ix, lim);
|
||||
|
||||
@ -1582,6 +1583,10 @@ impure fn trans_vec(@block_ctxt cx, vec[@ast.expr] args,
|
||||
sub = copy_ty(src_res.bcx, true, dst_elt, src_res.val, unit_ty);
|
||||
i += 1;
|
||||
}
|
||||
auto fill = sub.bcx.build.GEP(vec_val,
|
||||
vec(C_int(0), C_int(abi.vec_elt_fill)));
|
||||
sub.bcx.build.Store(data_sz, fill);
|
||||
|
||||
ret res(sub.bcx, vec_val);
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user