HomePhabricator

[SveEmitter] Add builtins to insert/extract subvectors from tuples (svget/svset)

Authored by sdesmalen on Jun 18 2020, 2:08 AM.

Description

[SveEmitter] Add builtins to insert/extract subvectors from tuples (svget/svset)

For example:

svint32_t svget4(svint32x4_t tuple, uint64_t imm_index)

returns the subvector at index, which must be in range 0..3.

svint32x3_t svset3(svint32x3_t tuple, uint64_t index, svint32_t vec)

returns a tuple vector with vec inserted into tuple at index,
which must be in range 0..2.

Reviewers: c-rhodes, efriedma

Reviewed By: c-rhodes

Tags: #clang

Differential Revision: https://reviews.llvm.org/D81464