1 /* { dg-do compile } */ 2 3 _Complex float test1(_Complex float f)4test1 (_Complex float f) 5 { 6 __asm__ ("" : "+r" (__real f)); 7 return f; 8 } 9 10 _Complex float test2(_Complex float f)11test2 (_Complex float f) 12 { 13 __asm__ ("" : "=r" (__real f)); 14 return f; 15 } 16 17 struct X { int i; }; 18 19 struct X test3(struct X x)20test3 (struct X x) 21 { 22 __asm__ ("" : "=r" (x.i)); 23 return x; 24 } 25 26 struct X test4(struct X x)27test4 (struct X x) 28 { 29 __asm__ ("" : "+r" (x.i)); 30 return x; 31 } 32 33 struct X test5(struct X x)34test5 (struct X x) 35 { 36 __asm__ ("" : "=r" (x)); 37 return x; 38 } 39 40 struct X test6(struct X x)41test6 (struct X x) 42 { 43 __asm__ ("" : "+r" (x)); 44 return x; 45 } 46