1 /* { dg-do compile } */ 2 /* { dg-options "-O2 -mavx -mtune=generic -dp" } */ 3 4 typedef struct objc_class *Class; 5 typedef struct objc_object 6 { 7 Class class_pointer; 8 } *id; 9 10 typedef const struct objc_selector *SEL; 11 typedef void * retval_t; 12 typedef void * arglist_t; 13 14 extern retval_t __objc_forward (id object, SEL sel, arglist_t args); 15 16 double __objc_double_forward(id rcv,SEL op,...)17__objc_double_forward (id rcv, SEL op, ...) 18 { 19 void *args, *res; 20 21 args = __builtin_apply_args (); 22 res = __objc_forward (rcv, op, args); 23 __builtin_return (res); 24 } 25 26 /* { dg-final { scan-assembler-times "avx_vzeroupper" 2 } } */ 27