]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/testsuite/gcc.c-torture/execute/builtins/lib/printf.c
Merge lto branch into trunk.
[thirdparty/gcc.git] / gcc / testsuite / gcc.c-torture / execute / builtins / lib / printf.c
CommitLineData
f0f05655 1#include <stdio.h>
2#include <stdarg.h>
58e292f1 3extern void abort (void);
f0f05655 4extern int inside_main;
5
7bfefa9d 6__attribute__ ((__noinline__))
f0f05655 7int
8printf (const char *string, ...)
9{
10 va_list ap;
11 int r;
12#ifdef __OPTIMIZE__
13 if (inside_main)
14 abort();
15#endif
16 va_start (ap, string);
17 r = vprintf (string, ap);
18 va_end (ap);
19 return r;
20}
21
6d77ed92 22
23/* Locking stdio doesn't matter for the purposes of this test. */
7bfefa9d 24__attribute__ ((__noinline__))
6d77ed92 25int
26printf_unlocked (const char *string, ...)
27{
28 va_list ap;
29 int r;
30#ifdef __OPTIMIZE__
31 if (inside_main)
32 abort();
33#endif
34 va_start (ap, string);
35 r = vprintf (string, ap);
36 va_end (ap);
37 return r;
38}