break;
case ORC_VAR_TYPE_SRC:
var->mask_alloc = orc_compiler_allocate_register (compiler, TRUE);
- var->ptr_offset = orc_compiler_allocate_register (compiler, FALSE);
- var->ptr_register = orc_compiler_allocate_register (compiler, FALSE);
- var->aligned_data = orc_compiler_allocate_register (compiler, TRUE);
+ if (var->need_mask_regs) {
+ var->ptr_offset = orc_compiler_allocate_register (compiler, FALSE);
+ var->ptr_register = orc_compiler_allocate_register (compiler, FALSE);
+ var->aligned_data = orc_compiler_allocate_register (compiler, TRUE);
+ }
break;
case ORC_VAR_TYPE_DEST:
var->ptr_register = orc_compiler_allocate_register (compiler, FALSE);