Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix SVE2.1 quadword gather load/scatter store intrinsics #337

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 8 additions & 7 deletions main/acle.md
Original file line number Diff line number Diff line change
Expand Up @@ -404,6 +404,7 @@ Armv8.4-A [[ARMARMv84]](#ARMARMv84). Support is added for the Dot Product intrin
level of the [Function Multi Versioning](#function-multi-versioning).
* Added [**Alpha**](#current-status-and-anticipated-changes)
support for SME2.1 (FEAT_SME2p1).
* Fixed SVE2.1 quadword gather load/scatter store intrinsics.

### References

Expand Down Expand Up @@ -8959,14 +8960,14 @@ Gather Load Quadword.
// _bf16, _f16, _f32, _f64
svint8_t svld1q_gather[_u64base]_s8(svbool_t pg, svuint64_t zn);
svint8_t svld1q_gather[_u64base]_offset_s8(svbool_t pg, svuint64_t zn, int64_t offset);
svint8_t svld1q_gather_[u64]offset[_s8](svbool_t pg, const int8_t *base, svuint64_t offset);
svint8_t svld1q_gather[_u64]_offset[_s8](svbool_t pg, const int8_t *base, svuint64_t offset);
momchil-velikov marked this conversation as resolved.
Show resolved Hide resolved


// Variants are also available for:
// _u16, _u32, _s32, _u64, _s64
// _bf16, _f16, _f32, _f64
svint16_t svld1q_gather_[u64]index[_s16](svbool_t pg, const int16_t *base, svuint64_t index);
svint8_t svld1q_gather[_u64base]_index_s8(svbool_t pg, svuint64_t zn, int64_t index);
svint16_t svld1q_gather[_u64]_index[_s16](svbool_t pg, const int16_t *base, svuint64_t index);
svint16_t svld1q_gather[_u64base]_index_s16(svbool_t pg, svuint64_t zn, int64_t index);
```

#### LD2Q, LD3Q, LD4Q
Expand Down Expand Up @@ -9054,14 +9055,14 @@ Scatter store quadwords.
// _bf16, _f16, _f32, _f64
void svst1q_scatter[_u64base][_s8](svbool_t pg, svuint64_t zn, svint8_t data);
void svst1q_scatter[_u64base]_offset[_s8](svbool_t pg, svuint64_t zn, int64_t offset, svint8_t data);
void svst1q_scatter_[u64]offset[_s8](svbool_t pg, const uint8_t *base, svuint64_t offset, svint8_t data);
void svst1q_scatter[_u64]_offset[_s8](svbool_t pg, const uint8_t *base, svuint64_t offset, svint8_t data);

// Variants are also available for:
// _u16, _u32, _s32, _u64, _s64
// _bf16, _f16, _f32, _f64
void svst1q_scatter[_u64base]_index[_s8](svbool_t pg, svuint64_t zn, int64_t index, svint8_t data);
void svst1q_scatter_[u64]index_[s16](svbool_t pg, const int16_t *base, svuint64_t index, svint16_t data);
```
void svst1q_scatter[_u64]_index[_s16](svbool_t pg, const int16_t *base, svuint64_t index, svint16_t data);
void svst1q_scatter[_u64base]_index[_s16](svbool_t pg, svuint64_t zn, int64_t index, svint16_t data);
momchil-velikov marked this conversation as resolved.
Show resolved Hide resolved
```

#### ST2Q, ST3Q, ST4Q

Expand Down
Loading