xref: /aosp_15_r20/external/clang/test/CodeGen/struct-matching-constraint.c (revision 67e74705e28f6214e480b399dd47ea732279e315)
1*67e74705SXin Li // REQUIRES: arm-registered-target
2*67e74705SXin Li // RUN: %clang_cc1 -S -emit-llvm -triple armv7a-apple-darwin -target-feature +neon %s -o /dev/null
3*67e74705SXin Li typedef unsigned short uint16_t;
4*67e74705SXin Li typedef __attribute__((neon_vector_type(8))) uint16_t uint16x8_t;
5*67e74705SXin Li 
b(uint16x8_t sat,uint16x8_t luma)6*67e74705SXin Li void b(uint16x8_t sat, uint16x8_t luma)
7*67e74705SXin Li {
8*67e74705SXin Li   __asm__("vmov.16 %1, %0   \n\t"
9*67e74705SXin Li                                            "vtrn.16 %0, %1   \n\t"
10*67e74705SXin Li    :"=w"(luma), "=w"(sat)
11*67e74705SXin Li    :"0"(luma)
12*67e74705SXin Li    );
13*67e74705SXin Li 
14*67e74705SXin Li }
15