blob: 501cc84da10ed7c5607eb0eedb8e8c55024026e3 [file] [log] [blame]
/* { dg-do compile } */
/* { dg-skip-if "Require optimisation to compile DCE tests" { *-*-* } { "-O0" "-mfloat-abi=softfp" } { "" } } */
/* { dg-require-effective-target arm_v8_1m_main_cde_mve_fp_ok } */
/* { dg-add-options arm_v8_1m_main_cde_mve_fp } */
/* We use -ffast-math so that the addition of 0.0 to a value is assumed to not
change the value. This means the tests for float types can use the same
trick of adding to a value initialised to zero to check whether the RTL
patterns correctly mark that the incoming value is not used. */
/* { dg-additional-options "-ffast-math" } */
/* { dg-final { check-function-bodies "**" "" } } */
#include "cde-mve-tests.c"
/* NOTE:
We avoid matching the functions returning a __builtin_neon_ti value since
there are variations between processors that make matching the whole
function difficult.
Since moving a TImode value into an MVE 'Q' register takes a few
temporaries, this leaves many instructions which can end up being
scheduled in different ways. Matching the ways this ends up getting
scheduled and restructured is awkward, and the extra tests for this one
data type don't seem to be worth the confusing testcases. */
/*
** test_cde_vcx1q_u8float16x8_tintint:
** vcx1 p0, q0, #33
** bx lr
*/
/*
** test_cde_vcx1q_u8float32x4_tintint:
** vcx1 p0, q0, #33
** bx lr
*/
/*
** test_cde_vcx1q_u8uint8x16_tintint:
** vcx1 p0, q0, #33
** bx lr
*/
/*
** test_cde_vcx1q_u8uint16x8_tintint:
** vcx1 p0, q0, #33
** bx lr
*/
/*
** test_cde_vcx1q_u8uint32x4_tintint:
** vcx1 p0, q0, #33
** bx lr
*/
/*
** test_cde_vcx1q_u8uint64x2_tintint:
** vcx1 p0, q0, #33
** bx lr
*/
/*
** test_cde_vcx1q_u8int8x16_tintint:
** vcx1 p0, q0, #33
** bx lr
*/
/*
** test_cde_vcx1q_u8int16x8_tintint:
** vcx1 p0, q0, #33
** bx lr
*/
/*
** test_cde_vcx1q_u8int32x4_tintint:
** vcx1 p0, q0, #33
** bx lr
*/
/*
** test_cde_vcx1q_u8int64x2_tintint:
** vcx1 p0, q0, #33
** bx lr
*/
/*
** test_cde_vcx1qafloat16x8_tintint:
** vldr\.64 d0, \.L([0-9]*)
** vldr\.64 d1, \.L\1\+8
** vcx1a p0, q0, #33
** bx lr
*/
/*
** test_cde_vcx1qafloat32x4_tintint:
** vldr\.64 d0, \.L([0-9]*)
** vldr\.64 d1, \.L\1\+8
** vcx1a p0, q0, #33
** bx lr
*/
/*
** test_cde_vcx1qauint8x16_tintint:
** vldr\.64 d0, \.L([0-9]*)
** vldr\.64 d1, \.L\1\+8
** vcx1a p0, q0, #33
** bx lr
*/
/*
** test_cde_vcx1qauint16x8_tintint:
** vldr\.64 d0, \.L([0-9]*)
** vldr\.64 d1, \.L\1\+8
** vcx1a p0, q0, #33
** bx lr
*/
/*
** test_cde_vcx1qauint32x4_tintint:
** vldr\.64 d0, \.L([0-9]*)
** vldr\.64 d1, \.L\1\+8
** vcx1a p0, q0, #33
** bx lr
*/
/*
** test_cde_vcx1qauint64x2_tintint:
** vldr\.64 d0, \.L([0-9]*)
** vldr\.64 d1, \.L\1\+8
** vcx1a p0, q0, #33
** bx lr
*/
/*
** test_cde_vcx1qaint8x16_tintint:
** vldr\.64 d0, \.L([0-9]*)
** vldr\.64 d1, \.L\1\+8
** vcx1a p0, q0, #33
** bx lr
*/
/*
** test_cde_vcx1qaint16x8_tintint:
** vldr\.64 d0, \.L([0-9]*)
** vldr\.64 d1, \.L\1\+8
** vcx1a p0, q0, #33
** bx lr
*/
/*
** test_cde_vcx1qaint32x4_tintint:
** vldr\.64 d0, \.L([0-9]*)
** vldr\.64 d1, \.L\1\+8
** vcx1a p0, q0, #33
** bx lr
*/
/*
** test_cde_vcx1qaint64x2_tintint:
** vldr\.64 d0, \.L([0-9]*)
** vldr\.64 d1, \.L\1\+8
** vcx1a p0, q0, #33
** bx lr
*/
/*
** test_cde_vcx2q_u8float16x8_tuint16x8_tint:
** vcx2 p0, q0, q0, #33
** bx lr
*/
/*
** test_cde_vcx2q_u8float16x8_tfloat32x4_tint:
** vcx2 p0, q0, q0, #33
** bx lr
*/
/*
** test_cde_vcx2q_u8float32x4_tuint8x16_tint:
** vcx2 p0, q0, q0, #33
** bx lr
*/
/*
** test_cde_vcx2q_u8int64x2_tuint8x16_tint:
** vcx2 p0, q0, q0, #33
** bx lr
*/
/*
** test_cde_vcx2q_u8int8x16_tuint8x16_tint:
** vcx2 p0, q0, q0, #33
** bx lr
*/
/*
** test_cde_vcx2q_u8uint16x8_tuint8x16_tint:
** vcx2 p0, q0, q0, #33
** bx lr
*/
/*
** test_cde_vcx2q_u8uint8x16_tint64x2_tint:
** vcx2 p0, q0, q0, #33
** bx lr
*/
/*
** test_cde_vcx2q_u8uint8x16_tint8x16_tint:
** vcx2 p0, q0, q0, #33
** bx lr
*/
/*
** test_cde_vcx2q_u8uint8x16_tuint16x8_tint:
** vcx2 p0, q0, q0, #33
** bx lr
*/
/*
** test_cde_vcx2q_u8uint8x16_tuint8x16_tint:
** vcx2 p0, q0, q0, #33
** bx lr
*/
/*
** test_cde_vcx2qfloat16x8_tuint16x8_tint:
** vcx2 p0, q0, q0, #33
** bx lr
*/
/*
** test_cde_vcx2qfloat16x8_tfloat32x4_tint:
** vcx2 p0, q0, q0, #33
** bx lr
*/
/*
** test_cde_vcx2qfloat32x4_tuint8x16_tint:
** vcx2 p0, q0, q0, #33
** bx lr
*/
/*
** test_cde_vcx2qint64x2_tuint8x16_tint:
** vcx2 p0, q0, q0, #33
** bx lr
*/
/*
** test_cde_vcx2qint8x16_tuint8x16_tint:
** vcx2 p0, q0, q0, #33
** bx lr
*/
/*
** test_cde_vcx2quint16x8_tuint8x16_tint:
** vcx2 p0, q0, q0, #33
** bx lr
*/
/*
** test_cde_vcx2quint8x16_tint64x2_tint:
** vcx2 p0, q0, q0, #33
** bx lr
*/
/*
** test_cde_vcx2quint8x16_tint8x16_tint:
** vcx2 p0, q0, q0, #33
** bx lr
*/
/*
** test_cde_vcx2quint8x16_tuint16x8_tint:
** vcx2 p0, q0, q0, #33
** bx lr
*/
/*
** test_cde_vcx2quint8x16_tuint8x16_tint:
** vcx2 p0, q0, q0, #33
** bx lr
*/
/*
** test_cde_vcx2qafloat16x8_tuint16x8_tint:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx2a p0, (q[0-7]), q0, #33
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx2qafloat16x8_tfloat32x4_tint:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx2a p0, (q[0-7]), q0, #33
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx2qafloat32x4_tuint8x16_tint:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx2a p0, (q[0-7]), q0, #33
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx2qaint64x2_tuint8x16_tint:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx2a p0, (q[0-7]), q0, #33
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx2qaint8x16_tuint8x16_tint:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx2a p0, (q[0-7]), q0, #33
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx2qauint16x8_tuint8x16_tint:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx2a p0, (q[0-7]), q0, #33
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx2qauint8x16_tint64x2_tint:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx2a p0, (q[0-7]), q0, #33
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx2qauint8x16_tint8x16_tint:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx2a p0, (q[0-7]), q0, #33
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx2qauint8x16_tuint16x8_tint:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx2a p0, (q[0-7]), q0, #33
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx2qauint8x16_tuint8x16_tint:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx2a p0, (q[0-7]), q0, #33
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx3q_u8uint8x16_tuint8x16_tuint8x16_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3q_u8uint16x8_tuint8x16_tuint8x16_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3q_u8uint8x16_tuint16x8_tuint8x16_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3q_u8uint8x16_tuint8x16_tuint16x8_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3q_u8float16x8_tfloat16x8_tfloat16x8_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3q_u8float32x4_tuint64x2_tfloat16x8_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3q_u8int8x16_tuint8x16_tuint8x16_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3q_u8uint8x16_tint8x16_tuint8x16_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3q_u8uint8x16_tuint8x16_tint8x16_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3q_u8int64x2_tuint8x16_tuint8x16_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3q_u8uint8x16_tint64x2_tuint8x16_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3q_u8uint8x16_tuint8x16_tint64x2_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3q_u8uint8x16_tint64x2_tint64x2_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3quint8x16_tuint8x16_tuint8x16_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3qfloat16x8_tfloat16x8_tfloat16x8_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3qfloat32x4_tuint64x2_tfloat16x8_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3quint16x8_tuint8x16_tuint8x16_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3quint8x16_tuint16x8_tuint8x16_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3quint8x16_tuint8x16_tuint16x8_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3qint8x16_tuint8x16_tuint8x16_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3quint8x16_tint8x16_tuint8x16_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3quint8x16_tuint8x16_tint8x16_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3qint64x2_tuint8x16_tuint8x16_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3quint8x16_tint64x2_tuint8x16_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3quint8x16_tuint8x16_tint64x2_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3quint8x16_tint64x2_tint64x2_t:
** vcx3 p0, q0, q0, q1, #12
** bx lr
*/
/*
** test_cde_vcx3qauint8x16_tuint8x16_tuint8x16_t:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx3a p0, (q[0-7]), q0, q1, #12
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx3qafloat16x8_tfloat16x8_tfloat16x8_t:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx3a p0, (q[0-7]), q0, q1, #12
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx3qafloat32x4_tuint64x2_tfloat16x8_t:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx3a p0, (q[0-7]), q0, q1, #12
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx3qauint16x8_tuint8x16_tuint8x16_t:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx3a p0, (q[0-7]), q0, q1, #12
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx3qauint8x16_tuint16x8_tuint8x16_t:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx3a p0, (q[0-7]), q0, q1, #12
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx3qauint8x16_tuint8x16_tuint16x8_t:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx3a p0, (q[0-7]), q0, q1, #12
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx3qaint8x16_tuint8x16_tuint8x16_t:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx3a p0, (q[0-7]), q0, q1, #12
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx3qauint8x16_tint8x16_tuint8x16_t:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx3a p0, (q[0-7]), q0, q1, #12
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx3qauint8x16_tuint8x16_tint8x16_t:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx3a p0, (q[0-7]), q0, q1, #12
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx3qaint64x2_tuint8x16_tuint8x16_t:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx3a p0, (q[0-7]), q0, q1, #12
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx3qauint8x16_tint64x2_tuint8x16_t:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx3a p0, (q[0-7]), q0, q1, #12
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx3qauint8x16_tuint8x16_tint64x2_t:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx3a p0, (q[0-7]), q0, q1, #12
** vmov q0, \2
** bx lr
*/
/*
** test_cde_vcx3qauint8x16_tint64x2_tint64x2_t:
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L([0-9]*)
** vldr\.64 d(?:[01][0-4]|[0-9]), \.L\1\+8
** vcx3a p0, (q[0-7]), q0, q1, #12
** vmov q0, \2
** bx lr
*/
/* Predicated MVE intrinsics. */
/* Merging lane predication types.
NOTE: Depending on the target, the setup instructions (vldr's and vmsr) can
be in a different order. Here we just check that all the expected setup
instructions are there. We don't check that the setup instructions are
different since the likelyhood of the compiler generating repeated versions
of one rather than one and the other is very low and it's difficult to apply
such a constraint in TCL regexps (lookahead/lookbehind constraints may not
contain back references). */
/*
** test_cde_vcx1q_mfloat16x8_tintint:
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** vpst
** vcx1t p0, q0, #32
** bx lr
*/
/*
** test_cde_vcx1q_mfloat32x4_tintint:
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** vpst
** vcx1t p0, q0, #32
** bx lr
*/
/*
** test_cde_vcx1q_muint8x16_tintint:
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** vpst
** vcx1t p0, q0, #32
** bx lr
*/
/*
** test_cde_vcx1q_muint16x8_tintint:
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** vpst
** vcx1t p0, q0, #32
** bx lr
*/
/*
** test_cde_vcx1q_muint32x4_tintint:
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** vpst
** vcx1t p0, q0, #32
** bx lr
*/
/*
** test_cde_vcx1q_muint64x2_tintint:
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** vpst
** vcx1t p0, q0, #32
** bx lr
*/
/*
** test_cde_vcx1q_mint8x16_tintint:
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** vpst
** vcx1t p0, q0, #32
** bx lr
*/
/*
** test_cde_vcx1q_mint16x8_tintint:
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** vpst
** vcx1t p0, q0, #32
** bx lr
*/
/*
** test_cde_vcx1q_mint32x4_tintint:
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** vpst
** vcx1t p0, q0, #32
** bx lr
*/
/*
** test_cde_vcx1q_mint64x2_tintint:
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** vpst
** vcx1t p0, q0, #32
** bx lr
*/
/*
** test_cde_vcx1qa_mfloat16x8_tintint:
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** vpst
** vcx1at p0, q0, #32
** bx lr
*/
/*
** test_cde_vcx1qa_mfloat32x4_tintint:
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** vpst
** vcx1at p0, q0, #32
** bx lr
*/
/*
** test_cde_vcx1qa_muint8x16_tintint:
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** vpst
** vcx1at p0, q0, #32
** bx lr
*/
/*
** test_cde_vcx1qa_muint16x8_tintint:
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** vpst
** vcx1at p0, q0, #32
** bx lr
*/
/*
** test_cde_vcx1qa_muint32x4_tintint:
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** vpst
** vcx1at p0, q0, #32
** bx lr
*/
/*
** test_cde_vcx1qa_muint64x2_tintint:
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** vpst
** vcx1at p0, q0, #32
** bx lr
*/
/*
** test_cde_vcx1qa_mint8x16_tintint:
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** vpst
** vcx1at p0, q0, #32
** bx lr
*/
/*
** test_cde_vcx1qa_mint16x8_tintint:
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** vpst
** vcx1at p0, q0, #32
** bx lr
*/
/*
** test_cde_vcx1qa_mint32x4_tintint:
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** vpst
** vcx1at p0, q0, #32
** bx lr
*/
/*
** test_cde_vcx1qa_mint64x2_tintint:
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** (?:vldr\.64 d0, \.L[0-9]*\n\tvldr\.64 d1, \.L[0-9]*\+8|vmsr P0, r2 @ movhi)
** vpst
** vcx1at p0, q0, #32
** bx lr
*/
/*
** test_cde_vcx2q_mfloat16x8_tuint16x8_tint:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** vpst
** vcx2t p0, (q[0-7]), q0, #32
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx2q_mfloat16x8_tfloat32x4_tint:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** vpst
** vcx2t p0, (q[0-7]), q0, #32
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx2q_mfloat32x4_tuint8x16_tint:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** vpst
** vcx2t p0, (q[0-7]), q0, #32
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx2q_mint64x2_tuint8x16_tint:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** vpst
** vcx2t p0, (q[0-7]), q0, #32
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx2q_mint8x16_tuint8x16_tint:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** vpst
** vcx2t p0, (q[0-7]), q0, #32
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx2q_muint16x8_tuint8x16_tint:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** vpst
** vcx2t p0, (q[0-7]), q0, #32
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx2q_muint8x16_tint64x2_tint:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** vpst
** vcx2t p0, (q[0-7]), q0, #32
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx2q_muint8x16_tint8x16_tint:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** vpst
** vcx2t p0, (q[0-7]), q0, #32
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx2q_muint8x16_tuint16x8_tint:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** vpst
** vcx2t p0, (q[0-7]), q0, #32
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx2q_muint8x16_tuint8x16_tint:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** vpst
** vcx2t p0, (q[0-7]), q0, #32
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx2qa_mfloat16x8_tuint16x8_tint:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** vpst
** vcx2at p0, (q[0-7]), q0, #32
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx2qa_mfloat16x8_tfloat32x4_tint:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** vpst
** vcx2at p0, (q[0-7]), q0, #32
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx2qa_mfloat32x4_tuint8x16_tint:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** vpst
** vcx2at p0, (q[0-7]), q0, #32
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx2qa_mint64x2_tuint8x16_tint:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** vpst
** vcx2at p0, (q[0-7]), q0, #32
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx2qa_mint8x16_tuint8x16_tint:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** vpst
** vcx2at p0, (q[0-7]), q0, #32
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx2qa_muint16x8_tuint8x16_tint:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** vpst
** vcx2at p0, (q[0-7]), q0, #32
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx2qa_muint8x16_tint64x2_tint:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** vpst
** vcx2at p0, (q[0-7]), q0, #32
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx2qa_muint8x16_tint8x16_tint:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** vpst
** vcx2at p0, (q[0-7]), q0, #32
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx2qa_muint8x16_tuint16x8_tint:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** vpst
** vcx2at p0, (q[0-7]), q0, #32
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx2qa_muint8x16_tuint8x16_tint:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r1 @ movhi)
** vpst
** vcx2at p0, (q[0-7]), q0, #32
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3q_muint8x16_tuint8x16_tuint8x16_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3t p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3q_mfloat16x8_tfloat16x8_tfloat16x8_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3t p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3q_mfloat32x4_tuint64x2_tfloat16x8_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3t p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3q_muint16x8_tuint8x16_tuint8x16_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3t p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3q_muint8x16_tuint16x8_tuint8x16_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3t p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3q_muint8x16_tuint8x16_tuint16x8_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3t p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3q_mint8x16_tuint8x16_tuint8x16_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3t p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3q_muint8x16_tint8x16_tuint8x16_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3t p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3q_muint8x16_tuint8x16_tint8x16_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3t p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3q_mint64x2_tuint8x16_tuint8x16_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3t p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3q_muint8x16_tint64x2_tuint8x16_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3t p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3q_muint8x16_tuint8x16_tint64x2_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3t p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3q_muint8x16_tint64x2_tint64x2_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3t p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3qa_muint8x16_tuint8x16_tuint8x16_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3at p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3qa_mfloat16x8_tfloat16x8_tfloat16x8_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3at p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3qa_mfloat32x4_tuint64x2_tfloat16x8_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3at p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3qa_muint16x8_tuint8x16_tuint8x16_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3at p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3qa_muint8x16_tuint16x8_tuint8x16_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3at p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3qa_muint8x16_tuint8x16_tuint16x8_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3at p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3qa_mint8x16_tuint8x16_tuint8x16_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3at p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3qa_muint8x16_tint8x16_tuint8x16_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3at p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3qa_muint8x16_tuint8x16_tint8x16_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3at p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3qa_mint64x2_tuint8x16_tuint8x16_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3at p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3qa_muint8x16_tint64x2_tuint8x16_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3at p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3qa_muint8x16_tuint8x16_tint64x2_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3at p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/
/*
** test_cde_vcx3qa_muint8x16_tint64x2_tint64x2_t:
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** (?:vldr\.64 d(?:[02468]|1[024]), \.L[0-9]*\n\tvldr\.64 d(?:[13579]|1[135]), \.L[0-9]*\+8|vmsr P0, r0 @ movhi)
** vpst
** vcx3at p0, (q[0-7]), q0, q1, #15
** vmov q0, \1([[:space:]]+@ [^\n]*)?
** bx lr
*/