mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2024-11-21 16:46:41 -08:00
vkd3d-shader: Replace struct source_location with struct vkd3d_shader_location.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com> Signed-off-by: Matteo Bruni <mbruni@codeweavers.com> Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
28b1d68ce3
commit
3a975c2215
@ -25,20 +25,20 @@ void hlsl_message(const char *fmt, ...)
|
|||||||
/* FIXME */
|
/* FIXME */
|
||||||
}
|
}
|
||||||
|
|
||||||
void hlsl_note(struct hlsl_ctx *ctx, const struct source_location loc,
|
void hlsl_note(struct hlsl_ctx *ctx, const struct vkd3d_shader_location loc,
|
||||||
enum vkd3d_shader_log_level level, const char *fmt, ...)
|
enum vkd3d_shader_log_level level, const char *fmt, ...)
|
||||||
{
|
{
|
||||||
/* FIXME */
|
/* FIXME */
|
||||||
}
|
}
|
||||||
|
|
||||||
void hlsl_error(struct hlsl_ctx *ctx, const struct source_location loc, const char *fmt, ...)
|
void hlsl_error(struct hlsl_ctx *ctx, const struct vkd3d_shader_location loc, const char *fmt, ...)
|
||||||
{
|
{
|
||||||
/* FIXME */
|
/* FIXME */
|
||||||
|
|
||||||
set_parse_status(&ctx->status, PARSE_ERR);
|
set_parse_status(&ctx->status, PARSE_ERR);
|
||||||
}
|
}
|
||||||
|
|
||||||
void hlsl_warning(struct hlsl_ctx *ctx, const struct source_location loc, const char *fmt, ...)
|
void hlsl_warning(struct hlsl_ctx *ctx, const struct vkd3d_shader_location loc, const char *fmt, ...)
|
||||||
{
|
{
|
||||||
/* FIXME */
|
/* FIXME */
|
||||||
|
|
||||||
@ -348,7 +348,7 @@ bool hlsl_scope_add_type(struct hlsl_scope *scope, struct hlsl_type *type)
|
|||||||
}
|
}
|
||||||
|
|
||||||
struct hlsl_ir_expr *hlsl_new_cast(struct hlsl_ir_node *node, struct hlsl_type *type,
|
struct hlsl_ir_expr *hlsl_new_cast(struct hlsl_ir_node *node, struct hlsl_type *type,
|
||||||
struct source_location *loc)
|
struct vkd3d_shader_location *loc)
|
||||||
{
|
{
|
||||||
struct hlsl_ir_node *cast;
|
struct hlsl_ir_node *cast;
|
||||||
|
|
||||||
@ -358,7 +358,7 @@ struct hlsl_ir_expr *hlsl_new_cast(struct hlsl_ir_node *node, struct hlsl_type *
|
|||||||
return hlsl_ir_expr(cast);
|
return hlsl_ir_expr(cast);
|
||||||
}
|
}
|
||||||
|
|
||||||
struct hlsl_ir_var *hlsl_new_var(const char *name, struct hlsl_type *type, const struct source_location loc,
|
struct hlsl_ir_var *hlsl_new_var(const char *name, struct hlsl_type *type, const struct vkd3d_shader_location loc,
|
||||||
const char *semantic, unsigned int modifiers, const struct hlsl_reg_reservation *reg_reservation)
|
const char *semantic, unsigned int modifiers, const struct hlsl_reg_reservation *reg_reservation)
|
||||||
{
|
{
|
||||||
struct hlsl_ir_var *var;
|
struct hlsl_ir_var *var;
|
||||||
@ -376,7 +376,7 @@ struct hlsl_ir_var *hlsl_new_var(const char *name, struct hlsl_type *type, const
|
|||||||
}
|
}
|
||||||
|
|
||||||
struct hlsl_ir_var *hlsl_new_synthetic_var(struct hlsl_ctx *ctx, const char *name, struct hlsl_type *type,
|
struct hlsl_ir_var *hlsl_new_synthetic_var(struct hlsl_ctx *ctx, const char *name, struct hlsl_type *type,
|
||||||
const struct source_location loc)
|
const struct vkd3d_shader_location loc)
|
||||||
{
|
{
|
||||||
struct hlsl_ir_var *var = hlsl_new_var(vkd3d_strdup(name), type, loc, NULL, 0, NULL);
|
struct hlsl_ir_var *var = hlsl_new_var(vkd3d_strdup(name), type, loc, NULL, 0, NULL);
|
||||||
|
|
||||||
@ -391,7 +391,7 @@ static bool type_is_single_reg(const struct hlsl_type *type)
|
|||||||
}
|
}
|
||||||
|
|
||||||
struct hlsl_ir_assignment *hlsl_new_assignment(struct hlsl_ir_var *var, struct hlsl_ir_node *offset,
|
struct hlsl_ir_assignment *hlsl_new_assignment(struct hlsl_ir_var *var, struct hlsl_ir_node *offset,
|
||||||
struct hlsl_ir_node *rhs, unsigned int writemask, struct source_location loc)
|
struct hlsl_ir_node *rhs, unsigned int writemask, struct vkd3d_shader_location loc)
|
||||||
{
|
{
|
||||||
struct hlsl_ir_assignment *assign;
|
struct hlsl_ir_assignment *assign;
|
||||||
|
|
||||||
@ -414,7 +414,8 @@ struct hlsl_ir_assignment *hlsl_new_simple_assignment(struct hlsl_ir_var *lhs, s
|
|||||||
return hlsl_new_assignment(lhs, NULL, rhs, 0, rhs->loc);
|
return hlsl_new_assignment(lhs, NULL, rhs, 0, rhs->loc);
|
||||||
}
|
}
|
||||||
|
|
||||||
struct hlsl_ir_constant *hlsl_new_uint_constant(struct hlsl_ctx *ctx, unsigned int n, const struct source_location loc)
|
struct hlsl_ir_constant *hlsl_new_uint_constant(struct hlsl_ctx *ctx, unsigned int n,
|
||||||
|
const struct vkd3d_shader_location loc)
|
||||||
{
|
{
|
||||||
struct hlsl_ir_constant *c;
|
struct hlsl_ir_constant *c;
|
||||||
|
|
||||||
@ -425,7 +426,8 @@ struct hlsl_ir_constant *hlsl_new_uint_constant(struct hlsl_ctx *ctx, unsigned i
|
|||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct hlsl_ir_node *hlsl_new_unary_expr(enum hlsl_ir_expr_op op, struct hlsl_ir_node *arg, struct source_location loc)
|
struct hlsl_ir_node *hlsl_new_unary_expr(enum hlsl_ir_expr_op op,
|
||||||
|
struct hlsl_ir_node *arg, struct vkd3d_shader_location loc)
|
||||||
{
|
{
|
||||||
struct hlsl_ir_expr *expr;
|
struct hlsl_ir_expr *expr;
|
||||||
|
|
||||||
@ -452,7 +454,7 @@ struct hlsl_ir_node *hlsl_new_binary_expr(enum hlsl_ir_expr_op op, struct hlsl_i
|
|||||||
return &expr->node;
|
return &expr->node;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct hlsl_ir_if *hlsl_new_if(struct hlsl_ir_node *condition, struct source_location loc)
|
struct hlsl_ir_if *hlsl_new_if(struct hlsl_ir_node *condition, struct vkd3d_shader_location loc)
|
||||||
{
|
{
|
||||||
struct hlsl_ir_if *iff;
|
struct hlsl_ir_if *iff;
|
||||||
|
|
||||||
@ -465,7 +467,7 @@ struct hlsl_ir_if *hlsl_new_if(struct hlsl_ir_node *condition, struct source_loc
|
|||||||
return iff;
|
return iff;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct hlsl_ir_load *hlsl_new_var_load(struct hlsl_ir_var *var, const struct source_location loc)
|
struct hlsl_ir_load *hlsl_new_var_load(struct hlsl_ir_var *var, const struct vkd3d_shader_location loc)
|
||||||
{
|
{
|
||||||
struct hlsl_ir_load *load;
|
struct hlsl_ir_load *load;
|
||||||
|
|
||||||
@ -477,7 +479,7 @@ struct hlsl_ir_load *hlsl_new_var_load(struct hlsl_ir_var *var, const struct sou
|
|||||||
}
|
}
|
||||||
|
|
||||||
struct hlsl_ir_swizzle *hlsl_new_swizzle(struct hlsl_ctx *ctx, DWORD s, unsigned int components,
|
struct hlsl_ir_swizzle *hlsl_new_swizzle(struct hlsl_ctx *ctx, DWORD s, unsigned int components,
|
||||||
struct hlsl_ir_node *val, struct source_location *loc)
|
struct hlsl_ir_node *val, struct vkd3d_shader_location *loc)
|
||||||
{
|
{
|
||||||
struct hlsl_ir_swizzle *swizzle;
|
struct hlsl_ir_swizzle *swizzle;
|
||||||
|
|
||||||
@ -496,7 +498,7 @@ bool hlsl_type_is_void(const struct hlsl_type *type)
|
|||||||
}
|
}
|
||||||
|
|
||||||
struct hlsl_ir_function_decl *hlsl_new_func_decl(struct hlsl_ctx *ctx, struct hlsl_type *return_type,
|
struct hlsl_ir_function_decl *hlsl_new_func_decl(struct hlsl_ctx *ctx, struct hlsl_type *return_type,
|
||||||
struct list *parameters, const char *semantic, struct source_location loc)
|
struct list *parameters, const char *semantic, struct vkd3d_shader_location loc)
|
||||||
{
|
{
|
||||||
struct hlsl_ir_function_decl *decl;
|
struct hlsl_ir_function_decl *decl;
|
||||||
|
|
||||||
|
@ -144,13 +144,6 @@ struct hlsl_struct_field
|
|||||||
unsigned int reg_offset;
|
unsigned int reg_offset;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct source_location
|
|
||||||
{
|
|
||||||
const char *file;
|
|
||||||
unsigned int line;
|
|
||||||
unsigned int col;
|
|
||||||
};
|
|
||||||
|
|
||||||
enum hlsl_ir_node_type
|
enum hlsl_ir_node_type
|
||||||
{
|
{
|
||||||
HLSL_IR_ASSIGNMENT = 0,
|
HLSL_IR_ASSIGNMENT = 0,
|
||||||
@ -171,7 +164,7 @@ struct hlsl_ir_node
|
|||||||
|
|
||||||
struct list uses;
|
struct list uses;
|
||||||
|
|
||||||
struct source_location loc;
|
struct vkd3d_shader_location loc;
|
||||||
|
|
||||||
/* Liveness ranges. "index" is the index of this instruction. Since this is
|
/* Liveness ranges. "index" is the index of this instruction. Since this is
|
||||||
* essentially an SSA value, the earliest live point is the index. This is
|
* essentially an SSA value, the earliest live point is the index. This is
|
||||||
@ -215,7 +208,7 @@ struct hlsl_reg_reservation
|
|||||||
struct hlsl_ir_var
|
struct hlsl_ir_var
|
||||||
{
|
{
|
||||||
struct hlsl_type *data_type;
|
struct hlsl_type *data_type;
|
||||||
struct source_location loc;
|
struct vkd3d_shader_location loc;
|
||||||
const char *name;
|
const char *name;
|
||||||
const char *semantic;
|
const char *semantic;
|
||||||
unsigned int modifiers;
|
unsigned int modifiers;
|
||||||
@ -237,7 +230,7 @@ struct hlsl_ir_function_decl
|
|||||||
{
|
{
|
||||||
struct hlsl_type *return_type;
|
struct hlsl_type *return_type;
|
||||||
struct hlsl_ir_var *return_var;
|
struct hlsl_ir_var *return_var;
|
||||||
struct source_location loc;
|
struct vkd3d_shader_location loc;
|
||||||
struct rb_entry entry;
|
struct rb_entry entry;
|
||||||
struct hlsl_ir_function *func;
|
struct hlsl_ir_function *func;
|
||||||
const char *semantic;
|
const char *semantic;
|
||||||
@ -487,7 +480,7 @@ static inline struct hlsl_ir_swizzle *hlsl_ir_swizzle(const struct hlsl_ir_node
|
|||||||
}
|
}
|
||||||
|
|
||||||
static inline void init_node(struct hlsl_ir_node *node, enum hlsl_ir_node_type type,
|
static inline void init_node(struct hlsl_ir_node *node, enum hlsl_ir_node_type type,
|
||||||
struct hlsl_type *data_type, struct source_location loc)
|
struct hlsl_type *data_type, struct vkd3d_shader_location loc)
|
||||||
{
|
{
|
||||||
memset(node, 0, sizeof(*node));
|
memset(node, 0, sizeof(*node));
|
||||||
node->type = type;
|
node->type = type;
|
||||||
@ -541,39 +534,39 @@ struct hlsl_ir_var *hlsl_get_var(struct hlsl_scope *scope, const char *name) DEC
|
|||||||
struct hlsl_type *hlsl_new_array_type(struct hlsl_ctx *ctx, struct hlsl_type *basic_type,
|
struct hlsl_type *hlsl_new_array_type(struct hlsl_ctx *ctx, struct hlsl_type *basic_type,
|
||||||
unsigned int array_size) DECLSPEC_HIDDEN;
|
unsigned int array_size) DECLSPEC_HIDDEN;
|
||||||
struct hlsl_ir_assignment *hlsl_new_assignment(struct hlsl_ir_var *var, struct hlsl_ir_node *offset,
|
struct hlsl_ir_assignment *hlsl_new_assignment(struct hlsl_ir_var *var, struct hlsl_ir_node *offset,
|
||||||
struct hlsl_ir_node *rhs, unsigned int writemask, struct source_location loc) DECLSPEC_HIDDEN;
|
struct hlsl_ir_node *rhs, unsigned int writemask, struct vkd3d_shader_location loc) DECLSPEC_HIDDEN;
|
||||||
struct hlsl_ir_node *hlsl_new_binary_expr(enum hlsl_ir_expr_op op, struct hlsl_ir_node *arg1,
|
struct hlsl_ir_node *hlsl_new_binary_expr(enum hlsl_ir_expr_op op, struct hlsl_ir_node *arg1,
|
||||||
struct hlsl_ir_node *arg2) DECLSPEC_HIDDEN;
|
struct hlsl_ir_node *arg2) DECLSPEC_HIDDEN;
|
||||||
struct hlsl_ir_expr *hlsl_new_cast(struct hlsl_ir_node *node, struct hlsl_type *type,
|
struct hlsl_ir_expr *hlsl_new_cast(struct hlsl_ir_node *node, struct hlsl_type *type,
|
||||||
struct source_location *loc) DECLSPEC_HIDDEN;
|
struct vkd3d_shader_location *loc) DECLSPEC_HIDDEN;
|
||||||
struct hlsl_ir_function_decl *hlsl_new_func_decl(struct hlsl_ctx *ctx, struct hlsl_type *return_type,
|
struct hlsl_ir_function_decl *hlsl_new_func_decl(struct hlsl_ctx *ctx, struct hlsl_type *return_type,
|
||||||
struct list *parameters, const char *semantic, struct source_location loc) DECLSPEC_HIDDEN;
|
struct list *parameters, const char *semantic, struct vkd3d_shader_location loc) DECLSPEC_HIDDEN;
|
||||||
struct hlsl_ir_if *hlsl_new_if(struct hlsl_ir_node *condition, struct source_location loc) DECLSPEC_HIDDEN;
|
struct hlsl_ir_if *hlsl_new_if(struct hlsl_ir_node *condition, struct vkd3d_shader_location loc) DECLSPEC_HIDDEN;
|
||||||
struct hlsl_ir_assignment *hlsl_new_simple_assignment(struct hlsl_ir_var *lhs,
|
struct hlsl_ir_assignment *hlsl_new_simple_assignment(struct hlsl_ir_var *lhs,
|
||||||
struct hlsl_ir_node *rhs) DECLSPEC_HIDDEN;
|
struct hlsl_ir_node *rhs) DECLSPEC_HIDDEN;
|
||||||
struct hlsl_type *hlsl_new_struct_type(struct hlsl_ctx *ctx, const char *name, struct list *fields) DECLSPEC_HIDDEN;
|
struct hlsl_type *hlsl_new_struct_type(struct hlsl_ctx *ctx, const char *name, struct list *fields) DECLSPEC_HIDDEN;
|
||||||
struct hlsl_ir_swizzle *hlsl_new_swizzle(struct hlsl_ctx *ctx, DWORD s, unsigned int components,
|
struct hlsl_ir_swizzle *hlsl_new_swizzle(struct hlsl_ctx *ctx, DWORD s, unsigned int components,
|
||||||
struct hlsl_ir_node *val, struct source_location *loc) DECLSPEC_HIDDEN;
|
struct hlsl_ir_node *val, struct vkd3d_shader_location *loc) DECLSPEC_HIDDEN;
|
||||||
struct hlsl_ir_var *hlsl_new_synthetic_var(struct hlsl_ctx *ctx, const char *name, struct hlsl_type *type,
|
struct hlsl_ir_var *hlsl_new_synthetic_var(struct hlsl_ctx *ctx, const char *name, struct hlsl_type *type,
|
||||||
const struct source_location loc) DECLSPEC_HIDDEN;
|
const struct vkd3d_shader_location loc) DECLSPEC_HIDDEN;
|
||||||
struct hlsl_type *hlsl_new_type(struct hlsl_ctx *ctx, const char *name, enum hlsl_type_class type_class,
|
struct hlsl_type *hlsl_new_type(struct hlsl_ctx *ctx, const char *name, enum hlsl_type_class type_class,
|
||||||
enum hlsl_base_type base_type, unsigned dimx, unsigned dimy) DECLSPEC_HIDDEN;
|
enum hlsl_base_type base_type, unsigned dimx, unsigned dimy) DECLSPEC_HIDDEN;
|
||||||
struct hlsl_ir_constant *hlsl_new_uint_constant(struct hlsl_ctx *ctx, unsigned int n,
|
struct hlsl_ir_constant *hlsl_new_uint_constant(struct hlsl_ctx *ctx, unsigned int n,
|
||||||
const struct source_location loc) DECLSPEC_HIDDEN;
|
const struct vkd3d_shader_location loc) DECLSPEC_HIDDEN;
|
||||||
struct hlsl_ir_node *hlsl_new_unary_expr(enum hlsl_ir_expr_op op, struct hlsl_ir_node *arg,
|
struct hlsl_ir_node *hlsl_new_unary_expr(enum hlsl_ir_expr_op op, struct hlsl_ir_node *arg,
|
||||||
struct source_location loc) DECLSPEC_HIDDEN;
|
struct vkd3d_shader_location loc) DECLSPEC_HIDDEN;
|
||||||
struct hlsl_ir_var *hlsl_new_var(const char *name, struct hlsl_type *type, const struct source_location loc,
|
struct hlsl_ir_var *hlsl_new_var(const char *name, struct hlsl_type *type, const struct vkd3d_shader_location loc,
|
||||||
const char *semantic, unsigned int modifiers,
|
const char *semantic, unsigned int modifiers,
|
||||||
const struct hlsl_reg_reservation *reg_reservation) DECLSPEC_HIDDEN;
|
const struct hlsl_reg_reservation *reg_reservation) DECLSPEC_HIDDEN;
|
||||||
struct hlsl_ir_load *hlsl_new_var_load(struct hlsl_ir_var *var, const struct source_location loc) DECLSPEC_HIDDEN;
|
struct hlsl_ir_load *hlsl_new_var_load(struct hlsl_ir_var *var, const struct vkd3d_shader_location loc) DECLSPEC_HIDDEN;
|
||||||
|
|
||||||
void hlsl_message(const char *fmt, ...) VKD3D_PRINTF_FUNC(1,2) DECLSPEC_HIDDEN;
|
void hlsl_message(const char *fmt, ...) VKD3D_PRINTF_FUNC(1,2) DECLSPEC_HIDDEN;
|
||||||
|
|
||||||
void hlsl_error(struct hlsl_ctx *ctx, const struct source_location loc,
|
void hlsl_error(struct hlsl_ctx *ctx, const struct vkd3d_shader_location loc,
|
||||||
const char *fmt, ...) VKD3D_PRINTF_FUNC(3, 4) DECLSPEC_HIDDEN;
|
const char *fmt, ...) VKD3D_PRINTF_FUNC(3, 4) DECLSPEC_HIDDEN;
|
||||||
void hlsl_warning(struct hlsl_ctx *ctx, const struct source_location loc,
|
void hlsl_warning(struct hlsl_ctx *ctx, const struct vkd3d_shader_location loc,
|
||||||
const char *fmt, ...) VKD3D_PRINTF_FUNC(3, 4) DECLSPEC_HIDDEN;
|
const char *fmt, ...) VKD3D_PRINTF_FUNC(3, 4) DECLSPEC_HIDDEN;
|
||||||
void hlsl_note(struct hlsl_ctx *ctx, const struct source_location loc, enum vkd3d_shader_log_level level,
|
void hlsl_note(struct hlsl_ctx *ctx, const struct vkd3d_shader_location loc, enum vkd3d_shader_log_level level,
|
||||||
const char *fmt, ...) VKD3D_PRINTF_FUNC(4, 5) DECLSPEC_HIDDEN;
|
const char *fmt, ...) VKD3D_PRINTF_FUNC(4, 5) DECLSPEC_HIDDEN;
|
||||||
|
|
||||||
void hlsl_push_scope(struct hlsl_ctx *ctx) DECLSPEC_HIDDEN;
|
void hlsl_push_scope(struct hlsl_ctx *ctx) DECLSPEC_HIDDEN;
|
||||||
|
@ -279,9 +279,9 @@ row_major {return KW_ROW_MAJOR; }
|
|||||||
|
|
||||||
static void update_location(struct hlsl_ctx *ctx, YYLTYPE *lloc)
|
static void update_location(struct hlsl_ctx *ctx, YYLTYPE *lloc)
|
||||||
{
|
{
|
||||||
lloc->file = ctx->source_file;
|
lloc->source_name = ctx->source_file;
|
||||||
lloc->col = ctx->column;
|
|
||||||
lloc->line = ctx->line_no;
|
lloc->line = ctx->line_no;
|
||||||
|
lloc->column = ctx->column;
|
||||||
ctx->column += yyget_leng(ctx->scanner);
|
ctx->column += yyget_leng(ctx->scanner);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
#include "hlsl.h"
|
#include "hlsl.h"
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
||||||
#define HLSL_YYLTYPE struct source_location
|
#define HLSL_YYLTYPE struct vkd3d_shader_location
|
||||||
|
|
||||||
struct parse_parameter
|
struct parse_parameter
|
||||||
{
|
{
|
||||||
@ -53,7 +53,7 @@ struct parse_initializer
|
|||||||
struct parse_variable_def
|
struct parse_variable_def
|
||||||
{
|
{
|
||||||
struct list entry;
|
struct list entry;
|
||||||
struct source_location loc;
|
struct vkd3d_shader_location loc;
|
||||||
|
|
||||||
char *name;
|
char *name;
|
||||||
uint32_t array_size;
|
uint32_t array_size;
|
||||||
@ -129,7 +129,7 @@ static void debug_dump_decl(struct hlsl_type *type, DWORD modifiers, const char
|
|||||||
TRACE("%s %s;\n", debug_hlsl_type(type), declname);
|
TRACE("%s %s;\n", debug_hlsl_type(type), declname);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void check_invalid_matrix_modifiers(struct hlsl_ctx *ctx, DWORD modifiers, struct source_location loc)
|
static void check_invalid_matrix_modifiers(struct hlsl_ctx *ctx, DWORD modifiers, struct vkd3d_shader_location loc)
|
||||||
{
|
{
|
||||||
if (modifiers & HLSL_MODIFIERS_MAJORITY_MASK)
|
if (modifiers & HLSL_MODIFIERS_MAJORITY_MASK)
|
||||||
hlsl_error(ctx, loc, "'row_major' or 'column_major' modifiers are only allowed for matrices.");
|
hlsl_error(ctx, loc, "'row_major' or 'column_major' modifiers are only allowed for matrices.");
|
||||||
@ -252,7 +252,7 @@ static bool implicit_compatible_data_types(struct hlsl_type *t1, struct hlsl_typ
|
|||||||
}
|
}
|
||||||
|
|
||||||
static struct hlsl_ir_node *add_implicit_conversion(struct hlsl_ctx *ctx, struct list *instrs,
|
static struct hlsl_ir_node *add_implicit_conversion(struct hlsl_ctx *ctx, struct list *instrs,
|
||||||
struct hlsl_ir_node *node, struct hlsl_type *dst_type, struct source_location *loc)
|
struct hlsl_ir_node *node, struct hlsl_type *dst_type, struct vkd3d_shader_location *loc)
|
||||||
{
|
{
|
||||||
struct hlsl_type *src_type = node->data_type;
|
struct hlsl_type *src_type = node->data_type;
|
||||||
struct hlsl_ir_expr *cast;
|
struct hlsl_ir_expr *cast;
|
||||||
@ -321,7 +321,7 @@ static bool declare_variable(struct hlsl_ctx *ctx, struct hlsl_ir_var *decl, boo
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
static DWORD add_modifiers(struct hlsl_ctx *ctx, DWORD modifiers, DWORD mod, const struct source_location loc)
|
static DWORD add_modifiers(struct hlsl_ctx *ctx, DWORD modifiers, DWORD mod, const struct vkd3d_shader_location loc)
|
||||||
{
|
{
|
||||||
if (modifiers & mod)
|
if (modifiers & mod)
|
||||||
{
|
{
|
||||||
@ -371,7 +371,7 @@ enum loop_type
|
|||||||
};
|
};
|
||||||
|
|
||||||
static struct list *create_loop(enum loop_type type, struct list *init, struct list *cond,
|
static struct list *create_loop(enum loop_type type, struct list *init, struct list *cond,
|
||||||
struct list *iter, struct list *body, struct source_location loc)
|
struct list *iter, struct list *body, struct vkd3d_shader_location loc)
|
||||||
{
|
{
|
||||||
struct list *list = NULL;
|
struct list *list = NULL;
|
||||||
struct hlsl_ir_loop *loop = NULL;
|
struct hlsl_ir_loop *loop = NULL;
|
||||||
@ -439,7 +439,7 @@ static void free_parse_initializer(struct parse_initializer *initializer)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static struct hlsl_ir_swizzle *get_swizzle(struct hlsl_ctx *ctx, struct hlsl_ir_node *value, const char *swizzle,
|
static struct hlsl_ir_swizzle *get_swizzle(struct hlsl_ctx *ctx, struct hlsl_ir_node *value, const char *swizzle,
|
||||||
struct source_location *loc)
|
struct vkd3d_shader_location *loc)
|
||||||
{
|
{
|
||||||
unsigned int len = strlen(swizzle), component = 0;
|
unsigned int len = strlen(swizzle), component = 0;
|
||||||
unsigned int i, set, swiz = 0;
|
unsigned int i, set, swiz = 0;
|
||||||
@ -521,7 +521,7 @@ static struct hlsl_ir_swizzle *get_swizzle(struct hlsl_ctx *ctx, struct hlsl_ir_
|
|||||||
}
|
}
|
||||||
|
|
||||||
static struct hlsl_ir_jump *add_return(struct hlsl_ctx *ctx, struct list *instrs,
|
static struct hlsl_ir_jump *add_return(struct hlsl_ctx *ctx, struct list *instrs,
|
||||||
struct hlsl_ir_node *return_value, struct source_location loc)
|
struct hlsl_ir_node *return_value, struct vkd3d_shader_location loc)
|
||||||
{
|
{
|
||||||
struct hlsl_type *return_type = ctx->cur_function->return_type;
|
struct hlsl_type *return_type = ctx->cur_function->return_type;
|
||||||
struct hlsl_ir_jump *jump;
|
struct hlsl_ir_jump *jump;
|
||||||
@ -553,7 +553,7 @@ static struct hlsl_ir_jump *add_return(struct hlsl_ctx *ctx, struct list *instrs
|
|||||||
}
|
}
|
||||||
|
|
||||||
static struct hlsl_ir_load *add_load(struct hlsl_ctx *ctx, struct list *instrs, struct hlsl_ir_node *var_node,
|
static struct hlsl_ir_load *add_load(struct hlsl_ctx *ctx, struct list *instrs, struct hlsl_ir_node *var_node,
|
||||||
struct hlsl_ir_node *offset, struct hlsl_type *data_type, const struct source_location loc)
|
struct hlsl_ir_node *offset, struct hlsl_type *data_type, const struct vkd3d_shader_location loc)
|
||||||
{
|
{
|
||||||
struct hlsl_ir_node *add = NULL;
|
struct hlsl_ir_node *add = NULL;
|
||||||
struct hlsl_ir_load *load;
|
struct hlsl_ir_load *load;
|
||||||
@ -599,7 +599,7 @@ static struct hlsl_ir_load *add_load(struct hlsl_ctx *ctx, struct list *instrs,
|
|||||||
}
|
}
|
||||||
|
|
||||||
static struct hlsl_ir_load *add_record_load(struct hlsl_ctx *ctx, struct list *instrs, struct hlsl_ir_node *record,
|
static struct hlsl_ir_load *add_record_load(struct hlsl_ctx *ctx, struct list *instrs, struct hlsl_ir_node *record,
|
||||||
const struct hlsl_struct_field *field, const struct source_location loc)
|
const struct hlsl_struct_field *field, const struct vkd3d_shader_location loc)
|
||||||
{
|
{
|
||||||
struct hlsl_ir_constant *c;
|
struct hlsl_ir_constant *c;
|
||||||
|
|
||||||
@ -611,7 +611,7 @@ static struct hlsl_ir_load *add_record_load(struct hlsl_ctx *ctx, struct list *i
|
|||||||
}
|
}
|
||||||
|
|
||||||
static struct hlsl_ir_load *add_array_load(struct hlsl_ctx *ctx, struct list *instrs, struct hlsl_ir_node *array,
|
static struct hlsl_ir_load *add_array_load(struct hlsl_ctx *ctx, struct list *instrs, struct hlsl_ir_node *array,
|
||||||
struct hlsl_ir_node *index, const struct source_location loc)
|
struct hlsl_ir_node *index, const struct vkd3d_shader_location loc)
|
||||||
{
|
{
|
||||||
const struct hlsl_type *expr_type = array->data_type;
|
const struct hlsl_type *expr_type = array->data_type;
|
||||||
struct hlsl_type *data_type;
|
struct hlsl_type *data_type;
|
||||||
@ -671,7 +671,7 @@ bool hlsl_type_is_row_major(const struct hlsl_type *type)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static struct hlsl_type *apply_type_modifiers(struct hlsl_ctx *ctx, struct hlsl_type *type,
|
static struct hlsl_type *apply_type_modifiers(struct hlsl_ctx *ctx, struct hlsl_type *type,
|
||||||
unsigned int *modifiers, struct source_location loc)
|
unsigned int *modifiers, struct vkd3d_shader_location loc)
|
||||||
{
|
{
|
||||||
unsigned int default_majority = 0;
|
unsigned int default_majority = 0;
|
||||||
struct hlsl_type *new_type;
|
struct hlsl_type *new_type;
|
||||||
@ -784,7 +784,7 @@ static bool add_typedef(struct hlsl_ctx *ctx, DWORD modifiers, struct hlsl_type
|
|||||||
}
|
}
|
||||||
|
|
||||||
static bool add_func_parameter(struct hlsl_ctx *ctx, struct list *list,
|
static bool add_func_parameter(struct hlsl_ctx *ctx, struct list *list,
|
||||||
struct parse_parameter *param, const struct source_location loc)
|
struct parse_parameter *param, const struct vkd3d_shader_location loc)
|
||||||
{
|
{
|
||||||
struct hlsl_ir_var *var;
|
struct hlsl_ir_var *var;
|
||||||
|
|
||||||
@ -1003,7 +1003,7 @@ static enum hlsl_base_type expr_common_base_type(enum hlsl_base_type t1, enum hl
|
|||||||
}
|
}
|
||||||
|
|
||||||
static struct hlsl_type *expr_common_type(struct hlsl_ctx *ctx, struct hlsl_type *t1, struct hlsl_type *t2,
|
static struct hlsl_type *expr_common_type(struct hlsl_ctx *ctx, struct hlsl_type *t1, struct hlsl_type *t2,
|
||||||
struct source_location *loc)
|
struct vkd3d_shader_location *loc)
|
||||||
{
|
{
|
||||||
enum hlsl_type_class type;
|
enum hlsl_type_class type;
|
||||||
enum hlsl_base_type base;
|
enum hlsl_base_type base;
|
||||||
@ -1098,7 +1098,7 @@ static struct hlsl_type *expr_common_type(struct hlsl_ctx *ctx, struct hlsl_type
|
|||||||
}
|
}
|
||||||
|
|
||||||
static struct hlsl_ir_expr *add_expr(struct hlsl_ctx *ctx, struct list *instrs,
|
static struct hlsl_ir_expr *add_expr(struct hlsl_ctx *ctx, struct list *instrs,
|
||||||
enum hlsl_ir_expr_op op, struct hlsl_ir_node *operands[3], struct source_location *loc)
|
enum hlsl_ir_expr_op op, struct hlsl_ir_node *operands[3], struct vkd3d_shader_location *loc)
|
||||||
{
|
{
|
||||||
struct hlsl_ir_expr *expr;
|
struct hlsl_ir_expr *expr;
|
||||||
struct hlsl_type *type;
|
struct hlsl_type *type;
|
||||||
@ -1152,7 +1152,7 @@ static struct list *append_unop(struct list *list, struct hlsl_ir_node *node)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static struct list *add_binary_expr(struct hlsl_ctx *ctx, struct list *list1, struct list *list2,
|
static struct list *add_binary_expr(struct hlsl_ctx *ctx, struct list *list1, struct list *list2,
|
||||||
enum hlsl_ir_expr_op op, struct source_location loc)
|
enum hlsl_ir_expr_op op, struct vkd3d_shader_location loc)
|
||||||
{
|
{
|
||||||
struct hlsl_ir_node *args[3] = {node_from_list(list1), node_from_list(list2)};
|
struct hlsl_ir_node *args[3] = {node_from_list(list1), node_from_list(list2)};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user