xref: /llvm-project/clang/test/CodeGen/2010-08-12-asm-aggr-arg.c (revision 0f1c1be1968076d6f96f8a7bcc4a15cf195ecd97)
1 // RUN: %clang_cc1 %s -emit-llvm -o - | FileCheck %s
2 // A small aggregate can be passed as an integer. Make sure we don't get an
3 // error with "input constraint with a matching output constraint of
4 // incompatible type!"
5 
6 struct wrapper {
7   int i;
8 };
9 
10 // CHECK: xyz
test(int i)11 int test(int i) {
12   struct wrapper w;
13   w.i = i;
14   __asm__("xyz" : "=r" (w) : "0" (w));
15   return w.i;
16 }
17