mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-26 23:40:10 +01:00
glsl/ir: Add builder support for functions with double floats
Signed-off-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Matt Turner <mattst88@gmail.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
This commit is contained in:
parent
eeae6251be
commit
41e9adfd83
2 changed files with 28 additions and 0 deletions
|
|
@ -256,6 +256,11 @@ ir_expression *round_even(operand a)
|
|||
return expr(ir_unop_round_even, a);
|
||||
}
|
||||
|
||||
ir_expression *fract(operand a)
|
||||
{
|
||||
return expr(ir_unop_fract, a);
|
||||
}
|
||||
|
||||
/* dot for vectors, mul for scalars */
|
||||
ir_expression *dot(operand a, operand b)
|
||||
{
|
||||
|
|
@ -519,6 +524,24 @@ interpolate_at_sample(operand a, operand b)
|
|||
return expr(ir_binop_interpolate_at_sample, a, b);
|
||||
}
|
||||
|
||||
ir_expression *
|
||||
f2d(operand a)
|
||||
{
|
||||
return expr(ir_unop_f2d, a);
|
||||
}
|
||||
|
||||
ir_expression *
|
||||
i2d(operand a)
|
||||
{
|
||||
return expr(ir_unop_i2d, a);
|
||||
}
|
||||
|
||||
ir_expression *
|
||||
u2d(operand a)
|
||||
{
|
||||
return expr(ir_unop_u2d, a);
|
||||
}
|
||||
|
||||
ir_expression *
|
||||
fma(operand a, operand b, operand c)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -139,6 +139,7 @@ ir_expression *carry(operand a, operand b);
|
|||
ir_expression *borrow(operand a, operand b);
|
||||
ir_expression *trunc(operand a);
|
||||
ir_expression *round_even(operand a);
|
||||
ir_expression *fract(operand a);
|
||||
ir_expression *dot(operand a, operand b);
|
||||
ir_expression *clamp(operand a, operand b, operand c);
|
||||
ir_expression *saturate(operand a);
|
||||
|
|
@ -184,6 +185,10 @@ ir_expression *i2b(operand a);
|
|||
ir_expression *f2b(operand a);
|
||||
ir_expression *b2f(operand a);
|
||||
|
||||
ir_expression *f2d(operand a);
|
||||
ir_expression *i2d(operand a);
|
||||
ir_expression *u2d(operand a);
|
||||
|
||||
ir_expression *min2(operand a, operand b);
|
||||
ir_expression *max2(operand a, operand b);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue