Store
On this Page
Store¶
Store Local¶
Represents ST_L instruction. Stores a scalar to scalar local memory.
Intrinsics Prototype and Arguments
void s_f32_st_l(uint32_t addr, float value, int switches=0, bool predicate=1, bool polarity=0) |
void s_bf16_st_l(uint32_t addr, bf16 value, int switches=0, bool predicate=1, bool polarity=0) |
void s_i32_st_l(uint32_t addr, int32_t value, int switches=0, bool predicate=1, bool polarity=0) |
void s_u32_st_l(uint32_t addr, uint32_t value, int switches=0, bool predicate=1, bool polarity=0) |
void s_i16_st_l(uint32_t addr, int16_t value, int switches=0, bool predicate=1, bool polarity=0) |
void s_u16_st_l(uint32_t addr, uint16_t value, int switches=0, bool predicate=1, bool polarity=0) |
void s_i8_st_l(uint32_t addr, int8_t value, int switches=0, bool predicate=1, bool polarity=0) |
void s_u8_st_l(uint32_t addr, uint8_t value, int switches=0, bool predicate=1, bool polarity=0) |
void s_i1_st_l(uint32_t addr, bool value, int switches=0, bool predicate=1, bool polarity=0) |
addr |
Address to write to (SRC1). |
value |
Value to write (SRC2). |
switches |
Instruction switches. |
predicate |
Predicate value for the instruction. |
polarity |
True if polarity of the predicate is inverted. |
Allowed switches are:
SW_MMIO - store to MMIO.
SW_SLM - store to SLM (the default).
Store Local vector¶
Represents ST_L_V instruction. Stores a vector to vector local memory.
Intrinsics Prototype and Arguments
void v_f32_st_l_v(uint32_t addr, float64 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_bf16_st_l_v(uint32_t addr, bfloat128 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i32_st_l_v(uint32_t addr, int64 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_u32_st_l_v(uint32_t addr, uint64 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i16_st_l_v(uint32_t addr, short128 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_u16_st_l_v(uint32_t addr, ushort128 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i8_st_l_v(uint32_t addr, char256 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_u8_st_l_v(uint32_t addr, uchar256 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i1_st_l_v(uint32_t addr, bool256 value, int switches=0, bool predicate=1, bool polarity=0) |
addr |
Address to write to (SRC1). |
value |
Value to write (SRC2). |
switches |
Instruction switches. |
predicate |
Predicate value for the instruction. |
polarity |
True if polarity of the predicate is inverted. |
Store local vector low¶
Represents ST_L_V_LOW instruction. Stores half a vector to vector local memory.
Intrinsics Prototype and Arguments
void v_f32_st_l_v_low(uint32_t addr, float64 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_bf16_st_l_v_low(uint32_t addr, bfloat128 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i32_st_l_v_low(uint32_t addr, int64 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_u32_st_l_v_low(uint32_t addr, uint64 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i16_st_l_v_low(uint32_t addr, short128 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_u16_st_l_v_low(uint32_t addr, ushort128 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i8_st_l_v_low(uint32_t addr, char256 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_u8_st_l_v_low(uint32_t addr, uchar256 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i1_st_l_v_low(uint32_t addr, bool256 value, int switches=0, bool predicate=1, bool polarity=0) |
addr |
Address to write to (SRC1). |
value |
Value to write (SRC2). |
switches |
Instruction switches. |
predicate |
Predicate value for the instruction. |
polarity |
True if polarity of the predicate is inverted. |
Store local vector high¶
Represents ST_L_V_HIGH instruction. Stores half a vector to vector local memory.
Intrinsics Prototype and Arguments
void v_f32_st_l_v_high(uint32_t addr, float64 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_bf16_st_l_v_high(uint32_t addr, bfloat128 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i32_st_l_v_high(uint32_t addr, int64 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_u32_st_l_v_high(uint32_t addr, uint64 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i16_st_l_v_high(uint32_t addr, short128 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_u16_st_l_v_high(uint32_t addr, ushort128 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i8_st_l_v_high(uint32_t addr, char256 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_u8_st_l_v_high(uint32_t addr, uchar256 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i1_st_l_v_high(uint32_t addr, bool256 value, int switches=0, bool predicate=1, bool polarity=0) |
addr |
Address to write to (SRC1). |
value |
Value to write (SRC2). |
switches |
Instruction switches. |
predicate |
Predicate value for the instruction. |
polarity |
True if polarity of the predicate is inverted. |
Store tensor¶
Represents ST_TNSR instruction.
Intrinsics Prototype and Arguments
void v_f32_st_tnsr(int5 ndx, const int8_t tensor, float64 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_bf16_st_tnsr(int5 ndx, const int8_t tensor, bfloat128 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i32_st_tnsr(int5 ndx, const int8_t tensor, int64 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_u32_st_tnsr(int5 ndx, const int8_t tensor, uint64 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i16_st_tnsr(int5 ndx, const int8_t tensor, short128 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_u16_st_tnsr(int5 ndx, const int8_t tensor, ushort128 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i8_st_tnsr(int5 ndx, const int8_t tensor, char256 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_u8_st_tnsr(int5 ndx, const int8_t tensor, uchar256 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i1_st_tnsr(int5 ndx, const int8_t tensor, bool256 value, int switches=0, bool predicate=1, bool polarity=0) |
ndx |
Tensor coordinates (SRC1). |
tensor |
Tensor number. |
value |
Value to write (SRC3). |
switches |
Instruction switches. |
predicate |
Predicate value for the instruction. |
polarity |
True if polarity of the predicate is inverted. |
Allowed switches are:
SW_PACK - When set, store pipe will perform packing according to PACK_DT.
Store tensor using PARTIAL switch¶
Represents ST_TNSR instruction with PARTIAL switch.
Intrinsics Prototype and Arguments
void v_f32_st_tnsr_partial(int5 ndx, int8_t tensor, float64 value, int8_t size, int8_t offset, int switches=0, bool predicate=1, bool polarity=0) |
void v_bf16_st_tnsr_partial(int5 ndx, int8_t tensor, bfloat128 value, int8_t size, int8_t offset, int switches=0, bool predicate=1, bool polarity=0) |
void v_i32_st_tnsr_partial(int5 ndx, int8_t tensor, int64 value, int8_t size, int8_t offset, int switches=0, bool predicate=1, bool polarity=0) |
void v_u32_st_tnsr_partial(int5 ndx, int8_t tensor, uint64 value, int8_t size, int8_t offset, int switches=0, bool predicate=1, bool polarity=0) |
void v_i16_st_tnsr_partial(int5 ndx, int8_t tensor, short128 value, int8_t size, int8_t offset, int switches=0, bool predicate=1, bool polarity=0) |
void v_u16_st_tnsr_partial(int5 ndx, int8_t tensor, ushort128 value, int8_t size, int8_t offset, int switches=0, bool predicate=1, bool polarity=0) |
void v_i8_st_tnsr_partial(int5 ndx, int8_t tensor, char256 value, int8_t size, int8_t offset, int switches=0, bool predicate=1, bool polarity=0) |
void v_u8_st_tnsr_partial(int5 ndx, int8_t tensor, uchar256 value, int8_t size, int8_t offset, int switches=0, bool predicate=1, bool polarity=0) |
void v_i1_st_tnsr_partial(int5 ndx, int8_t tensor, bool256 value, int8_t size, int8_t offset, int switches=0, bool predicate=1, bool polarity=0) |
ndx |
Tensor coordinates (SRC1). |
tensor |
Tensor number. |
value |
Value to write (SRC3). |
size |
Size in elements minus 1. |
offset |
Offset in elements. |
switches |
Instruction switches. |
predicate |
Predicate value for the instruction. |
polarity |
True if polarity of the predicate is inverted. |
Allowed switches are:
SW_PACK - When set, store pipe will perform packing according to PACK_DT.
Store tensor high¶
Represents ST_TNSR_HIGH instruction.
Intrinsics Prototype and Arguments
void v_f32_st_tnsr_high(int5 ndx, const int8_t tensor, float64 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_bf16_st_tnsr_high(int5 ndx, const int8_t tensor, bfloat128 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i32_st_tnsr_high(int5 ndx, const int8_t tensor, int64 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_u32_st_tnsr_high(int5 ndx, const int8_t tensor, uint64 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i16_st_tnsr_high(int5 ndx, const int8_t tensor, short128 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_u16_st_tnsr_high(int5 ndx, const int8_t tensor, ushort128 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i8_st_tnsr_high(int5 ndx, const int8_t tensor, char256 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_u8_st_tnsr_high(int5 ndx, const int8_t tensor, uchar256 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i1_st_tnsr_high(int5 ndx, const int8_t tensor, bool256 value, int switches=0, bool predicate=1, bool polarity=0) |
ndx |
Tensor coordinates (SRC1). |
tensor |
Tensor number. |
value |
Value to write (SRC3). |
switches |
Instruction switches. |
predicate |
Predicate value for the instruction. |
polarity |
True if polarity of the predicate is inverted. |
Allowed switches are:
SW_PACK - When set, store pipe will perform packing according to PACK_DT.
Store tensor low¶
Represents ST_TNSR_LOW instruction.
Intrinsics Prototype and Arguments
void v_f32_st_tnsr_low(int5 ndx, const int8_t tensor, float64 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_bf16_st_tnsr_low(int5 ndx, const int8_t tensor, bfloat128 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i32_st_tnsr_low(int5 ndx, const int8_t tensor, int64 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_u32_st_tnsr_low(int5 ndx, const int8_t tensor, uint64 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i16_st_tnsr_low(int5 ndx, const int8_t tensor, short128 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_u16_st_tnsr_low(int5 ndx, const int8_t tensor, ushort128 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i8_st_tnsr_low(int5 ndx, const int8_t tensor, char256 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_u8_st_tnsr_low(int5 ndx, const int8_t tensor, uchar256 value, int switches=0, bool predicate=1, bool polarity=0) |
void v_i1_st_tnsr_low(int5 ndx, const int8_t tensor, bool256 value, int switches=0, bool predicate=1, bool polarity=0) |
ndx |
Tensor coordinates (SRC1). |
tensor |
Tensor number. |
value |
Value to write (SRC3). |
switches |
Instruction switches. |
predicate |
Predicate value for the instruction. |
polarity |
True if polarity of the predicate is inverted. |
Allowed switches are:
SW_PACK - When set, store pipe will perform packing according to PACK_DT.