int32_t s = scale->var->data.i;
assert(s > 0);
+ if (scale->var->size > f->rops->MAX_BYTES)
+ scale->var->size = f->rops->MAX_BYTES;
+
if (vb->nb_pointers + vb->nb_dimentions > 1 || vb->type >= SCF_STRUCT)
- sib->size = 8;
+ sib->size = f->rops->MAX_BYTES;
else {
sib->size = vb->data_size;
assert(8 >= vb->data_size);
return ret;
}
- scf_register_t* ri2 = f->rops->find_register_color_bytes(ri->color, 8);
+ scf_register_t* ri2 = f->rops->find_register_color_bytes(ri->color, f->rops->MAX_BYTES);
if (ri->bytes < ri2->bytes) {
&& 4 != s
&& 8 != s) {
- assert(8 == scale->var->size);
-
ret = risc_select_reg(&rs, scale, c, f, 0);
if (ret < 0) {
scf_loge("\n");