1 // -mretpoline does not work yet on Darwin.
4 // RUN: %clangxx_cfi -o %t %s
6 // RUN: %clangxx_cfi -mretpoline -o %t2 %s
9 // Tests that the CFI mechanism does not crash the program when making various
10 // kinds of valid calls involving classes with various different linkages and
11 // types of inheritance, and both virtual and non-virtual member functions.
76 struct E2
: virtual E
{
83 break_optimization(a
);
87 break_optimization(a
);
92 break_optimization(b
);
96 break_optimization(b
);
101 break_optimization(c
);
105 break_optimization(c
);
110 break_optimization(d
);
114 break_optimization(d
);
119 break_optimization(e
);
123 break_optimization(e
);