ir_type_return,
ir_type_swizzle,
ir_type_texture,
- ir_type_max, /**< maximum ir_type enum number, for validation */
+ ir_type_max /**< maximum ir_type enum number, for validation */
};
/**
/** Whether or not this function has a body (which may be empty). */
unsigned is_defined:1;
- /** Whether or not this function signature is a built-in. */
- unsigned is_built_in:1;
-
/** Body of instructions in the function. */
struct exec_list body;
*/
const char *name;
+ /** Whether or not this function is a built-in. */
+ unsigned is_builtin:1;
+
/**
* List of ir_function_signature for each overloaded function with this name.
*/
ir_unop_rcp,
ir_unop_rsq,
ir_unop_sqrt,
- ir_unop_exp,
- ir_unop_log,
+ ir_unop_exp, /**< Log base e on gentype */
+ ir_unop_log, /**< Natural log on gentype */
ir_unop_exp2,
ir_unop_log2,
ir_unop_f2i, /**< Float-to-integer conversion. */
ir_unop_i2b, /**< int-to-boolean conversion */
ir_unop_b2i, /**< Boolean-to-int conversion */
ir_unop_u2f, /**< Unsigned-to-float conversion. */
+ ir_unop_any,
/**
* \name Unary floating-point rounding operations.
extern void
reparent_ir(exec_list *list, void *mem_ctx);
-class glsl_symbol_table;
+struct glsl_symbol_table;
extern void
import_prototypes(const exec_list *source, exec_list *dest,
- class glsl_symbol_table *symbols, void *mem_ctx);
+ struct glsl_symbol_table *symbols, void *mem_ctx);
extern bool
ir_has_call(ir_instruction *ir);
+extern void
+do_set_program_inouts(exec_list *instructions, struct gl_program *prog);
+
#endif /* IR_H */