xref: /llvm-project/clang/test/CodeGen/aligned-sret.c (revision c5de4dd1eab00df76c1a68c5f397304ceacb71f2)
1 // RUN: %clang_cc1 -triple x86_64-apple-macos %s -emit-llvm -o- | FileCheck %s
2 
3 typedef __attribute__((__ext_vector_type__(4),__aligned__(16))) double simd_double4;
4 typedef struct { simd_double4 columns[4]; } simd_double4x4;
5 typedef simd_double4x4 matrix_double4x4;
6 
7 // CHECK: define{{.*}} void @ident(ptr dead_on_unwind noalias writable sret(%struct.simd_double4x4) align 16 %agg.result
ident(matrix_double4x4 x)8 matrix_double4x4 ident(matrix_double4x4 x) {
9   return x;
10 }
11