nir_ssa_def *index = nir_ssa_for_src(b, deref->arr.index, 1);
assert(deref->arr.index.ssa);
offset = nir_iadd(b, offset,
- nir_imul(b, index, nir_imm_int(b, array_size)));
+ nir_imul_imm(b, index, array_size));
deref = nir_deref_instr_parent(deref);
assert(glsl_type_is_array(deref->type));
b.cursor = nir_before_instr(&intrin->instr);
nir_ssa_def *index =
- nir_iadd(&b, nir_imm_int(&b, var->data.driver_location),
- get_aoa_deref_offset(&b, deref, 1));
+ nir_iadd_imm(&b, get_aoa_deref_offset(&b, deref, 1),
+ var->data.driver_location);
nir_rewrite_image_intrinsic(intrin, index, false);
break;
}
}
b.cursor = nir_before_instr(instr);
- offset = nir_iadd(&b,
- get_aoa_deref_offset(&b, deref, BRW_IMAGE_PARAM_SIZE * 4),
- nir_imm_int(&b, img_idx[var->data.binding] * 4 +
- nir_intrinsic_base(intrin) * 16));
+ offset = nir_iadd_imm(&b,
+ get_aoa_deref_offset(&b, deref, BRW_IMAGE_PARAM_SIZE * 4),
+ img_idx[var->data.binding] * 4 +
+ nir_intrinsic_base(intrin) * 16);
break;
}
case nir_intrinsic_load_workgroup_size: {
nir_ssa_def *val = nir_fmul_imm(&b, &tex->dest.ssa, (1 << width) - 1);
val = nir_f2u32(&b, val);
if (wa & WA_SIGN) {
- val = nir_ishl(&b, val, nir_imm_int(&b, 32 - width));
- val = nir_ishr(&b, val, nir_imm_int(&b, 32 - width));
+ val = nir_ishl_imm(&b, val, 32 - width);
+ val = nir_ishr_imm(&b, val, 32 - width);
}
nir_ssa_def_rewrite_uses_after(&tex->dest.ssa, val, val->parent_instr);
}
nir_ssa_def *index = nir_ssa_for_src(b, deref->arr.index, 1);
assert(deref->arr.index.ssa);
offset = nir_iadd(b, offset,
- nir_imul(b, index, nir_imm_int(b, array_size)));
+ nir_imul_imm(b, index, array_size));
deref = nir_deref_instr_parent(deref);
assert(glsl_type_is_array(deref->type));
b.cursor = nir_before_instr(&intrin->instr);
nir_ssa_def *index =
- nir_iadd(&b, nir_imm_int(&b, var->data.driver_location),
- get_aoa_deref_offset(&b, deref, 1));
+ nir_iadd_imm(&b, get_aoa_deref_offset(&b, deref, 1),
+ var->data.driver_location);
nir_rewrite_image_intrinsic(intrin, index, false);
break;
}
}
b.cursor = nir_before_instr(instr);
- offset = nir_iadd(&b,
+ offset = nir_iadd_imm(&b,
get_aoa_deref_offset(&b, deref, BRW_IMAGE_PARAM_SIZE * 4),
- nir_imm_int(&b, system_values_start +
- img_idx[var->data.binding] * 4 +
- nir_intrinsic_base(intrin) * 16));
+ system_values_start +
+ img_idx[var->data.binding] * 4 +
+ nir_intrinsic_base(intrin) * 16);
break;
}
case nir_intrinsic_load_workgroup_size: {
sample = nir_f2i32(b, sample);
if (tex_samples == 2) {
- sample = nir_isub(b, nir_imm_int(b, 1), sample);
+ sample = nir_isub_imm(b, 1, sample);
} else if (tex_samples == 8) {
- sample = nir_iand(b, nir_ishr(b, nir_imm_int(b, 0x64210573),
- nir_ishl(b, sample, nir_imm_int(b, 2))),
- nir_imm_int(b, 0xf));
+ sample = nir_iand_imm(b, nir_ishr(b, nir_imm_int(b, 0x64210573),
+ nir_ishl_imm(b, sample, 2)),
+ 0xf);
} else if (tex_samples == 16) {
nir_ssa_def *sample_low =
- nir_iand(b, nir_ishr(b, nir_imm_int(b, 0xd31479af),
- nir_ishl(b, sample, nir_imm_int(b, 2))),
- nir_imm_int(b, 0xf));
+ nir_iand_imm(b, nir_ishr(b, nir_imm_int(b, 0xd31479af),
+ nir_ishl_imm(b, sample, 2)),
+ 0xf);
nir_ssa_def *sample_high =
- nir_iand(b, nir_ishr(b, nir_imm_int(b, 0xe58b602c),
- nir_ishl(b, nir_iadd(b, sample,
- nir_imm_int(b, -8)),
- nir_imm_int(b, 2))),
- nir_imm_int(b, 0xf));
+ nir_iand_imm(b, nir_ishr(b, nir_imm_int(b, 0xe58b602c),
+ nir_ishl_imm(b, nir_iadd_imm(b, sample, -8),
+ 2)),
+ 0xf);
sample = nir_bcsel(b, nir_ilt_imm(b, sample, 8),
sample_low, sample_high);
const unsigned chan_start_bit = dst_fmtl->channels_array[c].start_bit;
const unsigned chan_bits = dst_fmtl->channels_array[c].bits;
- chans[c] = nir_iand(b, nir_shift_imm(b, packed, -(int)chan_start_bit),
- nir_imm_int(b, BITFIELD_MASK(chan_bits)));
+ chans[c] = nir_iand_imm(b, nir_shift_imm(b, packed, -(int)chan_start_bit),
+ BITFIELD_MASK(chan_bits));
if (dst_fmtl->channels_array[c].type == ISL_UNORM)
chans[c] = nir_format_unorm_to_float(b, chans[c], &chan_bits);
static nir_ssa_def *
blorp_nir_bit(nir_builder *b, nir_ssa_def *src, unsigned bit)
{
- return nir_iand(b, nir_ushr(b, src, nir_imm_int(b, bit)),
- nir_imm_int(b, 1));
+ return nir_iand_imm(b, nir_ushr_imm(b, src, bit), 1);
}
#pragma pack(push, 1)
id_x = nir_umod(b, block, size_x);
id_y = nir_umod(b,
nir_iadd(b,
- nir_umod(b, linear, nir_imm_int(b, height)),
+ nir_umod_imm(b, linear, height),
nir_imul_imm(b,
nir_udiv(b, block, size_x),
height)),