blob: 5c6cdd5e43e5079f2e09fd8e53b9bc8173fdb71b [file] [log] [blame]
/* { dg-do assemble } */
/* { dg-require-effective-target arm_hard_ok } */
/* { dg-require-effective-target arm_v8_2a_bf16_neon_ok } */
/* { dg-add-options arm_v8_2a_bf16_neon } */
/* { dg-additional-options "-save-temps -O2 -mfloat-abi=hard" } */
/* { dg-final { check-function-bodies "**" "" } } */
#include "arm_neon.h"
/*
**test_vst2_bf16:
** ...
** vst2.16 {d0-d1}, \[r0\]
** bx lr
*/
void
test_vst2_bf16 (bfloat16_t *ptr, bfloat16x4x2_t val)
{
vst2_bf16 (ptr, val);
}
/*
**test_vst2q_bf16:
** ...
** vst2.16 {d0-d3}, \[r0\]
** bx lr
*/
void
test_vst2q_bf16 (bfloat16_t *ptr, bfloat16x8x2_t val)
{
vst2q_bf16 (ptr, val);
}
/*
**test_vst3_bf16:
** ...
** vst3.16 {d0-d2}, \[r0\]
** bx lr
*/
void
test_vst3_bf16 (bfloat16_t *ptr, bfloat16x4x3_t val)
{
vst3_bf16 (ptr, val);
}
/*
**test_vst3q_bf16:
** ...
** vst3.16 {d17, d19, d21}, \[r0\]
** bx lr
*/
void
test_vst3q_bf16 (bfloat16_t *ptr, bfloat16x8x3_t val)
{
vst3q_bf16 (ptr, val);
}
/*
**test_vst4_bf16:
** ...
** vst4.16 {d0-d3}, \[r0\]
** bx lr
*/
void
test_vst4_bf16 (bfloat16_t *ptr, bfloat16x4x4_t val)
{
vst4_bf16 (ptr, val);
}
/*
**test_vst4q_bf16:
** ...
** vst4.16 {d1, d3, d5, d7}, \[r0\]
** bx lr
*/
void
test_vst4q_bf16 (bfloat16_t *ptr, bfloat16x8x4_t val)
{
vst4q_bf16 (ptr, val);
}
int main()
{
return 0;
}