Lines Matching refs:constant

5  * constant of this software and associated documentation files (the "Software"),
7 * the rights to use, constant, modify, merge, publish, distribute, sublicense,
28 * usage of those constant channels with direct usage of the constants.
30 * This can lead to constant folding and algebraic optimizations in
33 * constant push buffer or as instruction immediate values) and
53 acp_entry(ir_variable *var, unsigned write_mask, ir_constant *constant)
56 assert(constant);
59 this->constant = constant;
67 this->constant = src->constant;
72 ir_constant *constant;
75 /** Mask of values initially available in the constant. */
139 ir_constant *constant =
141 if (constant) {
142 *rvalue = constant;
209 data.f[i] = found->constant->value.f[rhs_channel];
212 data.f16[i] = found->constant->value.f16[rhs_channel];
215 data.d[i] = found->constant->value.d[rhs_channel];
218 data.i[i] = found->constant->value.i[rhs_channel];
221 data.u[i] = found->constant->value.u[rhs_channel];
224 data.i16[i] = found->constant->value.i16[rhs_channel];
227 data.u16[i] = found->constant->value.u16[rhs_channel];
230 data.b[i] = found->constant->value.b[rhs_channel];
233 data.u64[i] = found->constant->value.u64[rhs_channel];
236 data.i64[i] = found->constant->value.i64[rhs_channel];
290 * = ...;). Since we only try to constant propagate vectors and
299 * Note that if the array index is constant (e.g. v[2] = ...;), we could
323 /* Do constant propagation on call parameters, but skip any out params */
359 /* Populate the initial acp with a constant of the original */
481 * Adds an entry to the available constant list if it's a plain assignment
493 ir_constant *constant = ir->rhs->as_constant();
495 if (!deref || !constant)
498 /* Only do constant propagation on vectors. Constant matrices,
513 entry = new(this->lin_ctx) acp_entry(deref->var, ir->write_mask, constant);
520 * Does a constant propagation pass on the code present in the instruction stream.