11 static volatile uint64_t
sink;
15 __asm__ __volatile__(
"" :::
"memory");
18 extern "C" __attribute__((noinline))
void simple_catch_marker(
int i) {
19 __asm__ __volatile__(
"" :::
"memory");
20 sink ^= (uint64_t)i << 8;
30 int main(
int argc,
char** argv) {
31 (void)argc; (void)argv;
33 for (
int i = 0; i <
N; ++i)
buf[i] = 0x11;
34 for (
int i = 0; i <
N; ++i) {
39 simple_catch_marker(i);
44 for (
int i = 0; i <
N; ++i)
sink ^=
buf[i];
45 fprintf(stderr,
"exc_simple_throw: caught=%d expected=%d sink=%llx\n",
46 caught,
N, (
unsigned long long)
sink);
47 return caught ==
N ? 0 : 1;
int main(int argc, char **argv)
__attribute__((noinline)) void simple_try_marker(int i)
static void middle(int i)
static volatile uint64_t sink