FFmpeg
Loading...
Searching...
No Matches
spvasm.h File Reference
#include <stdint.h>
#include <string.h>
#include "config.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/avassert.h"

Go to the source code of this file.

Data Structures

struct  SPICtx
 

Macros

#define COUNT_ARGS_IMPL(...)
 Copyright (C) 2026 Lynne.
 
#define COUNT_ARGS(...)
 
#define SPI_ARGS(...)
 
#define OP_1SRC(name, code)
 
#define OP_UNTYPEDRES1SRC(name, code)
 
#define OP_RES1SRC(name, code)
 
#define OP_2SRC(name, code)
 
#define OP_UNTYPEDRES2SRC(name, code)
 
#define OP_RES2SRC(name, code)
 
#define spi_OpConstantComposite(spi, res_type, src, ...)
 
#define spi_OpAccessChain(spi, res_type, ptr_id, ...)
 
#define spi_OpCompositeConstruct(spi, res_type, src, ...)
 
#define spi_OpCompositeExtract(spi, res_type, src, ...)
 
#define spi_OpExtInst(spi, res_type, instr_id, set_id, ...)
 
#define spi_OpTypeStruct(spi, id, ...)
 
#define spi_OpDecorate(spi, target, deco, ...)
 
#define spi_OpMemberDecorate(spi, type, target, deco, ...)
 
#define spi_OpVectorShuffle(spi, res_type, src1, src2, ...)
 
#define spi_OpCompositeInsert(spi, res_type, src1, src2, ...)
 

Functions

static void spi_write_u32 (SPICtx *spi, uint32_t v)
 
static void spi_put_str (SPICtx *spi, const char *str)
 
static void spi_init (SPICtx *spi, uint8_t *spv_buf, int buf_len)
 
static int spi_end (SPICtx *spi)
 
static int spi_reserve (SPICtx *spi, int len)
 
static void spi_OpCapability (SPICtx *spi, SpvCapability capability)
 
static void spi_OpMemoryModel (SPICtx *spi, SpvAddressingModel addressing_model, SpvMemoryModel memory_model)
 
static int spi_get_id (SPICtx *spi)
 
static int spi_strl (const char *str)
 
static void spi_op_1src (SPICtx *spi, int code, int src1_id)
 
static int spi_op_untypedres_1src (SPICtx *spi, int code, int id, int src1_id)
 
static int spi_op_res_1src (SPICtx *spi, int code, int id, int type_id, int src1_id)
 
static void spi_op_2src (SPICtx *spi, int code, int src1_id, int src2_id)
 
static int spi_op_untypedres_2src (SPICtx *spi, int code, int id, int src1_id, int src2_id)
 
static int spi_op_res_2src (SPICtx *spi, int code, int id, int type_id, int src1_id, int src2_id)
 
static int spi_op_res_1src_list (SPICtx *spi, int code, int id, int type_id, int src1_id, const int *args, int nb_args)
 
static void spi_op_untypedres_list (SPICtx *spi, int code, int id, const int *args, int nb_args)
 
static void spi_op_2src_list (SPICtx *spi, int code, int src1_id, int src2_id, const int *args, int nb_args)
 
static int spi_op_res_2src_list (SPICtx *spi, int code, int id, int type_id, int src1_id, int src2_id, const int *args, int nb_args)
 
static void spi_op_3src_list (SPICtx *spi, int code, int src1_id, int src2_id, int src3_id, const int *args, int nb_args)
 
static int spi_OpEntryPoint (SPICtx *spi, SpvExecutionModel execution_model, const char *name, const int *args, int nb_args)
 
static void spi_OpName (SPICtx *spi, int target_id, const char *name)
 
static void spi_OpExtension (SPICtx *spi, const char *name)
 
static int spi_OpExtInstImport (SPICtx *spi, const char *name)
 
static void spi_OpExecutionMode (SPICtx *spi, int entry_point_id, SpvExecutionMode mode, int *s, int nb_s)
 
static int spi_OpUndef (SPICtx *spi, int type_id)
 
static int spi_OpTypeVoid (SPICtx *spi)
 
static int spi_OpTypeBool (SPICtx *spi)
 
static int spi_OpTypeFloatEnc (SPICtx *spi, int width, SpvFPEncoding floating_point_encoding)
 
static int spi_OpTypeImage (SPICtx *spi, int sampled_type_id, SpvDim dim, int depth, int arrayed, int ms, int sampled, SpvImageFormat image_format)
 
static int spi_OpTypeArray (SPICtx *spi, int element_type_id, int id, int length_id)
 
static int spi_OpTypeRuntimeArray (SPICtx *spi, int element_type_id)
 
static int spi_OpTypePointer (SPICtx *spi, SpvStorageClass storage_class, int type_id)
 
static int spi_OpTypeFunction (SPICtx *spi, int return_type_id, const int *args, int nb_args)
 
static void spi_OpFunction (SPICtx *spi, int fn_id, int result_type_id, SpvFunctionControlMask function_control, int function_type_id)
 
static int spi_OpLabel (SPICtx *spi, int label_id)
 
static void spi_OpReturn (SPICtx *spi)
 
static void spi_OpFunctionEnd (SPICtx *spi)
 
static int spi_OpVariable (SPICtx *spi, int var_id, int ptr_type_id, SpvStorageClass storage_class, int initializer_id)
 
static int spi_OpConstantTrue (SPICtx *spi)
 
static int spi_OpConstantFalse (SPICtx *spi)
 
static int spi_OpConstantUInt (SPICtx *spi, int type_id, uint32_t val)
 
static int spi_OpConstantUInt64 (SPICtx *spi, int type_id, uint64_t val)
 
static int spi_OpConstantInt (SPICtx *spi, int type_id, int val)
 
static int spi_OpConstantInt64 (SPICtx *spi, int type_id, int64_t val)
 
static int spi_OpConstantFloat (SPICtx *spi, int type_id, float val)
 
static int spi_OpConstantDouble (SPICtx *spi, int type_id, double val)
 
static int spi_OpLoad (SPICtx *spi, int result_type_id, int ptr_id, SpvMemoryAccessMask memory_access, int align)
 
static void spi_OpStore (SPICtx *spi, int ptr_id, int obj_id, SpvMemoryAccessMask memory_access, int align)
 
static void spi_OpSelectionMerge (SPICtx *spi, int merge_block, SpvSelectionControlMask selection_control)
 
static void spi_OpBranchConditional (SPICtx *spi, int cond_id, int true_label, int false_label, uint32_t branch_weights)
 
static int spi_OpImageRead (SPICtx *spi, int result_type_id, int img_id, int pos_id, SpvImageOperandsMask image_operands)
 
static void spi_OpImageWrite (SPICtx *spi, int img_id, int pos_id, int src_id, SpvImageOperandsMask image_operands)
 

Macro Definition Documentation

◆ COUNT_ARGS_IMPL

#define COUNT_ARGS_IMPL ( ...)
Value:
(sizeof((int[]){__VA_ARGS__}) / sizeof(int))

Copyright (C) 2026 Lynne.

This file is part of FFmpeg.

FFmpeg is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

FFmpeg is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with FFmpeg; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

Definition at line 44 of file spvasm.h.

◆ COUNT_ARGS

#define COUNT_ARGS ( ...)
Value:
(COUNT_ARGS_IMPL(0, __VA_ARGS__) - 1)
#define COUNT_ARGS_IMPL(...)
Copyright (C) 2026 Lynne.
Definition spvasm.h:44

Definition at line 45 of file spvasm.h.

◆ SPI_ARGS

#define SPI_ARGS ( ...)
Value:
((int[]){0, __VA_ARGS__}) + 1, COUNT_ARGS(__VA_ARGS__)
#define COUNT_ARGS(...)
Definition spvasm.h:45

Definition at line 50 of file spvasm.h.

◆ OP_1SRC

#define OP_1SRC ( name,
code )
Value:
static inline void spi_ ## name(SPICtx *spi, int src1_id) \
{ \
spi_op_1src(spi, code, src1_id); \
}
const char * name
Definition qsvenc.c:142
const uint8_t * code
Definition spdifenc.c:433

Definition at line 149 of file spvasm.h.

◆ OP_UNTYPEDRES1SRC

#define OP_UNTYPEDRES1SRC ( name,
code )
Value:
static inline int spi_ ## name(SPICtx *spi, int src1_id) \
{ \
return spi_op_untypedres_1src(spi, code, spi_get_id(spi), src1_id); \
}
static int spi_op_untypedres_1src(SPICtx *spi, int code, int id, int src1_id)
Definition spvasm.h:156
static int spi_get_id(SPICtx *spi)
Definition spvasm.h:133

Definition at line 164 of file spvasm.h.

◆ OP_RES1SRC

#define OP_RES1SRC ( name,
code )
Value:
static inline int spi_ ## name(SPICtx *spi, int type_id, int src1_id) \
{ \
return spi_op_res_1src(spi, code, spi_get_id(spi), type_id, src1_id); \
}
static int spi_op_res_1src(SPICtx *spi, int code, int id, int type_id, int src1_id)
Definition spvasm.h:171

Definition at line 180 of file spvasm.h.

◆ OP_2SRC

#define OP_2SRC ( name,
code )
Value:
static inline void spi_ ## name(SPICtx *spi, int src1_id, int src2_id) \
{ \
spi_op_2src(spi, code, src1_id, src2_id); \
}

Definition at line 193 of file spvasm.h.

◆ OP_UNTYPEDRES2SRC

#define OP_UNTYPEDRES2SRC ( name,
code )
Value:
static inline int spi_ ## name(SPICtx *spi, int src1_id, int src2_id) \
{ \
return spi_op_untypedres_2src(spi, code, spi_get_id(spi), \
src1_id, src2_id); \
}
static int spi_op_untypedres_2src(SPICtx *spi, int code, int id, int src1_id, int src2_id)
Definition spvasm.h:200

Definition at line 209 of file spvasm.h.

◆ OP_RES2SRC

#define OP_RES2SRC ( name,
code )
Value:
static inline int spi_ ## name(SPICtx *spi, int type_id, int src1_id, int src2_id) \
{ \
return spi_op_res_2src(spi, code, spi_get_id(spi), type_id, \
src1_id, src2_id); \
}
static int spi_op_res_2src(SPICtx *spi, int code, int id, int type_id, int src1_id, int src2_id)
Definition spvasm.h:217

Definition at line 227 of file spvasm.h.

◆ spi_OpConstantComposite

#define spi_OpConstantComposite ( spi,
res_type,
src,
... )
Value:
spi_op_res_1src_list(spi, 44, spi_get_id(spi), res_type, src, \
SPI_ARGS(__VA_ARGS__))
static int spi_op_res_1src_list(SPICtx *spi, int code, int id, int type_id, int src1_id, const int *args, int nb_args)
Definition spvasm.h:235
#define SPI_ARGS(...)
Definition spvasm.h:50
#define src
Definition vp8dsp.c:248

Definition at line 307 of file spvasm.h.

◆ spi_OpAccessChain

#define spi_OpAccessChain ( spi,
res_type,
ptr_id,
... )
Value:
spi_op_res_1src_list(spi, 65, spi_get_id(spi), res_type, ptr_id, \
SPI_ARGS(__VA_ARGS__))

Definition at line 311 of file spvasm.h.

◆ spi_OpCompositeConstruct

#define spi_OpCompositeConstruct ( spi,
res_type,
src,
... )
Value:
spi_op_res_1src_list(spi, 80, spi_get_id(spi), res_type, src, \
SPI_ARGS(__VA_ARGS__))

Definition at line 315 of file spvasm.h.

◆ spi_OpCompositeExtract

#define spi_OpCompositeExtract ( spi,
res_type,
src,
... )
Value:
spi_op_res_1src_list(spi, 81, spi_get_id(spi), res_type, src, \
SPI_ARGS(__VA_ARGS__))

Definition at line 319 of file spvasm.h.

◆ spi_OpExtInst

#define spi_OpExtInst ( spi,
res_type,
instr_id,
set_id,
... )
Value:
spi_op_res_2src_list(spi, 12, spi_get_id(spi), res_type, instr_id, set_id, \
SPI_ARGS(__VA_ARGS__))
static int spi_op_res_2src_list(SPICtx *spi, int code, int id, int type_id, int src1_id, int src2_id, const int *args, int nb_args)
Definition spvasm.h:270

Definition at line 348 of file spvasm.h.

◆ spi_OpTypeStruct

#define spi_OpTypeStruct ( spi,
id,
... )
Value:
spi_op_untypedres_list(spi, 30, id, \
SPI_ARGS(__VA_ARGS__))
static void spi_op_untypedres_list(SPICtx *spi, int code, int id, const int *args, int nb_args)
Definition spvasm.h:248

Definition at line 352 of file spvasm.h.

◆ spi_OpDecorate

#define spi_OpDecorate ( spi,
target,
deco,
... )
Value:
spi_op_2src_list(spi, 71, target, deco, \
SPI_ARGS(__VA_ARGS__))
static void spi_op_2src_list(SPICtx *spi, int code, int src1_id, int src2_id, const int *args, int nb_args)
Definition spvasm.h:258

Definition at line 356 of file spvasm.h.

◆ spi_OpMemberDecorate

#define spi_OpMemberDecorate ( spi,
type,
target,
deco,
... )
Value:
spi_op_3src_list(spi, 72, type, target, deco, \
SPI_ARGS(__VA_ARGS__))
cl_device_type type
static void spi_op_3src_list(SPICtx *spi, int code, int src1_id, int src2_id, int src3_id, const int *args, int nb_args)
Definition spvasm.h:285

Definition at line 360 of file spvasm.h.

◆ spi_OpVectorShuffle

#define spi_OpVectorShuffle ( spi,
res_type,
src1,
src2,
... )
Value:
spi_op_res_2src_list(spi, 79, spi_get_id(spi), res_type, src1, src2, \
SPI_ARGS(__VA_ARGS__))
const pixel * src2
#define src1
Definition h264pred.c:141

Definition at line 364 of file spvasm.h.

◆ spi_OpCompositeInsert

#define spi_OpCompositeInsert ( spi,
res_type,
src1,
src2,
... )
Value:
spi_op_res_2src_list(spi, 82, spi_get_id(spi), res_type, src1, src2, \
SPI_ARGS(__VA_ARGS__))

Definition at line 368 of file spvasm.h.

Function Documentation

◆ spi_write_u32()

◆ spi_put_str()

static void spi_put_str ( SPICtx * spi,
const char * str )
static

Definition at line 72 of file spvasm.h.

Referenced by spi_OpEntryPoint(), spi_OpExtension(), spi_OpExtInstImport(), and spi_OpName().

◆ spi_init()

static void spi_init ( SPICtx * spi,
uint8_t * spv_buf,
int buf_len )
inlinestatic

Definition at line 86 of file spvasm.h.

◆ spi_end()

static int spi_end ( SPICtx * spi)
inlinestatic

Definition at line 100 of file spvasm.h.

◆ spi_reserve()

static int spi_reserve ( SPICtx * spi,
int len )
inlinestatic

Definition at line 108 of file spvasm.h.

◆ spi_OpCapability()

static void spi_OpCapability ( SPICtx * spi,
SpvCapability capability )
inlinestatic

Definition at line 119 of file spvasm.h.

◆ spi_OpMemoryModel()

static void spi_OpMemoryModel ( SPICtx * spi,
SpvAddressingModel addressing_model,
SpvMemoryModel memory_model )
inlinestatic

Definition at line 125 of file spvasm.h.

◆ spi_get_id()

◆ spi_strl()

static int spi_strl ( const char * str)
static

Definition at line 138 of file spvasm.h.

Referenced by spi_OpEntryPoint(), spi_OpExtension(), spi_OpExtInstImport(), and spi_OpName().

◆ spi_op_1src()

static void spi_op_1src ( SPICtx * spi,
int code,
int src1_id )
inlinestatic

Definition at line 144 of file spvasm.h.

◆ spi_op_untypedres_1src()

static int spi_op_untypedres_1src ( SPICtx * spi,
int code,
int id,
int src1_id )
inlinestatic

Definition at line 156 of file spvasm.h.

◆ spi_op_res_1src()

static int spi_op_res_1src ( SPICtx * spi,
int code,
int id,
int type_id,
int src1_id )
inlinestatic

Definition at line 171 of file spvasm.h.

◆ spi_op_2src()

static void spi_op_2src ( SPICtx * spi,
int code,
int src1_id,
int src2_id )
inlinestatic

Definition at line 187 of file spvasm.h.

◆ spi_op_untypedres_2src()

static int spi_op_untypedres_2src ( SPICtx * spi,
int code,
int id,
int src1_id,
int src2_id )
inlinestatic

Definition at line 200 of file spvasm.h.

◆ spi_op_res_2src()

static int spi_op_res_2src ( SPICtx * spi,
int code,
int id,
int type_id,
int src1_id,
int src2_id )
inlinestatic

Definition at line 217 of file spvasm.h.

◆ spi_op_res_1src_list()

static int spi_op_res_1src_list ( SPICtx * spi,
int code,
int id,
int type_id,
int src1_id,
const int * args,
int nb_args )
inlinestatic

Definition at line 235 of file spvasm.h.

◆ spi_op_untypedres_list()

static void spi_op_untypedres_list ( SPICtx * spi,
int code,
int id,
const int * args,
int nb_args )
inlinestatic

Definition at line 248 of file spvasm.h.

◆ spi_op_2src_list()

static void spi_op_2src_list ( SPICtx * spi,
int code,
int src1_id,
int src2_id,
const int * args,
int nb_args )
inlinestatic

Definition at line 258 of file spvasm.h.

◆ spi_op_res_2src_list()

static int spi_op_res_2src_list ( SPICtx * spi,
int code,
int id,
int type_id,
int src1_id,
int src2_id,
const int * args,
int nb_args )
inlinestatic

Definition at line 270 of file spvasm.h.

◆ spi_op_3src_list()

static void spi_op_3src_list ( SPICtx * spi,
int code,
int src1_id,
int src2_id,
int src3_id,
const int * args,
int nb_args )
inlinestatic

Definition at line 285 of file spvasm.h.

◆ spi_OpEntryPoint()

static int spi_OpEntryPoint ( SPICtx * spi,
SpvExecutionModel execution_model,
const char * name,
const int * args,
int nb_args )
inlinestatic

Definition at line 372 of file spvasm.h.

◆ spi_OpName()

static void spi_OpName ( SPICtx * spi,
int target_id,
const char * name )
inlinestatic

Definition at line 384 of file spvasm.h.

◆ spi_OpExtension()

static void spi_OpExtension ( SPICtx * spi,
const char * name )
inlinestatic

Definition at line 391 of file spvasm.h.

◆ spi_OpExtInstImport()

static int spi_OpExtInstImport ( SPICtx * spi,
const char * name )
inlinestatic

Definition at line 397 of file spvasm.h.

◆ spi_OpExecutionMode()

static void spi_OpExecutionMode ( SPICtx * spi,
int entry_point_id,
SpvExecutionMode mode,
int * s,
int nb_s )
inlinestatic

Definition at line 405 of file spvasm.h.

◆ spi_OpUndef()

static int spi_OpUndef ( SPICtx * spi,
int type_id )
inlinestatic

Definition at line 415 of file spvasm.h.

◆ spi_OpTypeVoid()

static int spi_OpTypeVoid ( SPICtx * spi)
inlinestatic

Definition at line 423 of file spvasm.h.

◆ spi_OpTypeBool()

static int spi_OpTypeBool ( SPICtx * spi)
inlinestatic

Definition at line 430 of file spvasm.h.

◆ spi_OpTypeFloatEnc()

static int spi_OpTypeFloatEnc ( SPICtx * spi,
int width,
SpvFPEncoding floating_point_encoding )
inlinestatic

Definition at line 443 of file spvasm.h.

Referenced by spi_OpTypeFloatEnc().

◆ spi_OpTypeImage()

static int spi_OpTypeImage ( SPICtx * spi,
int sampled_type_id,
SpvDim dim,
int depth,
int arrayed,
int ms,
int sampled,
SpvImageFormat image_format )
inlinestatic

Definition at line 453 of file spvasm.h.

◆ spi_OpTypeArray()

static int spi_OpTypeArray ( SPICtx * spi,
int element_type_id,
int id,
int length_id )
inlinestatic

Definition at line 470 of file spvasm.h.

◆ spi_OpTypeRuntimeArray()

static int spi_OpTypeRuntimeArray ( SPICtx * spi,
int element_type_id )
inlinestatic

Definition at line 480 of file spvasm.h.

◆ spi_OpTypePointer()

static int spi_OpTypePointer ( SPICtx * spi,
SpvStorageClass storage_class,
int type_id )
inlinestatic

Definition at line 488 of file spvasm.h.

◆ spi_OpTypeFunction()

static int spi_OpTypeFunction ( SPICtx * spi,
int return_type_id,
const int * args,
int nb_args )
inlinestatic

Definition at line 498 of file spvasm.h.

◆ spi_OpFunction()

static void spi_OpFunction ( SPICtx * spi,
int fn_id,
int result_type_id,
SpvFunctionControlMask function_control,
int function_type_id )
inlinestatic

Definition at line 509 of file spvasm.h.

◆ spi_OpLabel()

static int spi_OpLabel ( SPICtx * spi,
int label_id )
inlinestatic

Definition at line 520 of file spvasm.h.

◆ spi_OpReturn()

static void spi_OpReturn ( SPICtx * spi)
inlinestatic

Definition at line 527 of file spvasm.h.

◆ spi_OpFunctionEnd()

static void spi_OpFunctionEnd ( SPICtx * spi)
inlinestatic

Definition at line 532 of file spvasm.h.

◆ spi_OpVariable()

static int spi_OpVariable ( SPICtx * spi,
int var_id,
int ptr_type_id,
SpvStorageClass storage_class,
int initializer_id )
inlinestatic

Definition at line 537 of file spvasm.h.

◆ spi_OpConstantTrue()

static int spi_OpConstantTrue ( SPICtx * spi)
inlinestatic

Definition at line 549 of file spvasm.h.

◆ spi_OpConstantFalse()

static int spi_OpConstantFalse ( SPICtx * spi)
inlinestatic

Definition at line 557 of file spvasm.h.

◆ spi_OpConstantUInt()

static int spi_OpConstantUInt ( SPICtx * spi,
int type_id,
uint32_t val )
inlinestatic

Definition at line 565 of file spvasm.h.

Referenced by spi_OpConstantFloat(), and spi_OpConstantInt().

◆ spi_OpConstantUInt64()

static int spi_OpConstantUInt64 ( SPICtx * spi,
int type_id,
uint64_t val )
inlinestatic

Definition at line 574 of file spvasm.h.

Referenced by spi_OpConstantDouble(), and spi_OpConstantInt64().

◆ spi_OpConstantInt()

static int spi_OpConstantInt ( SPICtx * spi,
int type_id,
int val )
inlinestatic

Definition at line 584 of file spvasm.h.

◆ spi_OpConstantInt64()

static int spi_OpConstantInt64 ( SPICtx * spi,
int type_id,
int64_t val )
inlinestatic

Definition at line 590 of file spvasm.h.

◆ spi_OpConstantFloat()

static int spi_OpConstantFloat ( SPICtx * spi,
int type_id,
float val )
inlinestatic

Definition at line 596 of file spvasm.h.

◆ spi_OpConstantDouble()

static int spi_OpConstantDouble ( SPICtx * spi,
int type_id,
double val )
inlinestatic

Definition at line 602 of file spvasm.h.

◆ spi_OpLoad()

static int spi_OpLoad ( SPICtx * spi,
int result_type_id,
int ptr_id,
SpvMemoryAccessMask memory_access,
int align )
inlinestatic

Definition at line 608 of file spvasm.h.

◆ spi_OpStore()

static void spi_OpStore ( SPICtx * spi,
int ptr_id,
int obj_id,
SpvMemoryAccessMask memory_access,
int align )
inlinestatic

Definition at line 622 of file spvasm.h.

◆ spi_OpSelectionMerge()

static void spi_OpSelectionMerge ( SPICtx * spi,
int merge_block,
SpvSelectionControlMask selection_control )
inlinestatic

Definition at line 634 of file spvasm.h.

◆ spi_OpBranchConditional()

static void spi_OpBranchConditional ( SPICtx * spi,
int cond_id,
int true_label,
int false_label,
uint32_t branch_weights )
inlinestatic

Definition at line 642 of file spvasm.h.

◆ spi_OpImageRead()

static int spi_OpImageRead ( SPICtx * spi,
int result_type_id,
int img_id,
int pos_id,
SpvImageOperandsMask image_operands )
inlinestatic

Definition at line 656 of file spvasm.h.

◆ spi_OpImageWrite()

static void spi_OpImageWrite ( SPICtx * spi,
int img_id,
int pos_id,
int src_id,
SpvImageOperandsMask image_operands )
inlinestatic

Definition at line 669 of file spvasm.h.