18.21 リテラルからの単一のベクタレーンのロードの NEON 組み込み関数

これらのコンパイラ組み込み関数では、ベクタ内の 1 つのレーン(要素)を設定します。

uint8x8_t   vset_lane_u8(uint8_t value, uint8x8_t vec,
              __constrange(0,7) int lane);                    // VMOV.8 d0[0],r0

uint16x4_t  vset_lane_u16(uint16_t value, uint16x4_t vec,
              __constrange(0,3) int lane);                    // VMOV.16 d0[0],r0

uint32x2_t  vset_lane_u32(uint32_t value, uint32x2_t vec,
              __constrange(0,1) int lane);                    // VMOV.32 d0[0],r0

int8x8_t    vset_lane_s8(int8_t value, int8x8_t vec,
              __constrange(0,7) int lane);                    // VMOV.8 d0[0],r0

int16x4_t   vset_lane_s16(int16_t value, int16x4_t vec,
              __constrange(0,3) int lane);                    // VMOV.16 d0[0],r0

int32x2_t   vset_lane_s32(int32_t value, int32x2_t vec,
              __constrange(0,1) int lane);                    // VMOV.32 d0[0],r0

poly8x8_t   vset_lane_p8(poly8_t value, poly8x8_t vec,
              __constrange(0,7) int lane);                    // VMOV.8 d0[0],r0

poly16x4_t  vset_lane_p16(poly16_t value, poly16x4_t vec,
              __constrange(0,3) int lane);                    // VMOV.16 d0[0],r0

float32x2_t vset_lane_f32(float32_t value, float32x2_t vec,
              __constrange(0,1) int lane);                    // VMOV.32 d0[0],r0

uint8x16_t  vsetq_lane_u8(uint8_t value, uint8x16_t vec,
              __constrange(0,15) int lane);                   // VMOV.8 d0[0],r0

uint16x8_t  vsetq_lane_u16(uint16_t value, uint16x8_t vec,
              __constrange(0,7) int lane);                    // VMOV.16 d0[0],r0

uint32x4_t  vsetq_lane_u32(uint32_t value, uint32x4_t vec,
              __constrange(0,3) int lane);                    // VMOV.32 d0[0],r0

int8x16_t   vsetq_lane_s8(int8_t value, int8x16_t vec,
              __constrange(0,15) int lane);                   // VMOV.8 d0[0],r0

int16x8_t   vsetq_lane_s16(int16_t value, int16x8_t vec,
              __constrange(0,7) int lane);                    // VMOV.16 d0[0],r0

int32x4_t   vsetq_lane_s32(int32_t value, int32x4_t vec,
              __constrange(0,3) int lane);                    // VMOV.32 d0[0],r0

poly8x16_t  vsetq_lane_p8(poly8_t value, poly8x16_t vec,
              __constrange(0,15) int lane);                   // VMOV.8 d0[0],r0

poly16x8_t  vsetq_lane_p16(poly16_t value, poly16x8_t vec,
              __constrange(0,7) int lane);                    // VMOV.16 d0[0],r0

float32x4_t vsetq_lane_f32(float32_t value, float32x4_t vec,
              __constrange(0,3) int lane);                    // VMOV.32 d0[0],r0

int64x1_t   vset_lane_s64(int64_t value, int64x1_t vec,
              __constrange(0,0) int lane);                    // VMOV d0,r0,r0

uint64x1_t  vset_lane_u64(uint64_t value, uint64x1_t vec,
              __constrange(0,0) int lane);                    // VMOV d0,r0,r0

int64x2_t   vsetq_lane_s64(int64_t value, int64x2_t vec,
              __constrange(0,1) int lane);                    // VMOV d0,r0,r0

uint64x2_t  vsetq_lane_u64(uint64_t value, uint64x2_t vec,
              __constrange(0,1) int lane);                    // VMOV d0,r0,r0
非機密扱いPDF file icon PDF 版ARM DUI0472LJ
Copyright © 2010-2015 ARM.All rights reserved.