diff options
author | Douglas Gregor <dgregor@apple.com> | 2010-08-25 15:47:31 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2010-08-25 15:47:31 +0000 |
commit | 1e32ca6e3007e09073ddafb3cb5e0adc1f83293c (patch) | |
tree | f39d8c53f4d3758820b7e3c119c598dfae7f39f3 | |
parent | 993cdca0fed7deb646e4654dfb2607227a497faa (diff) |
Implement __builtin_printf, __builtin_fprintf. Fixes <rdar://problem/8336581>.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112049 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | include/clang/Basic/Builtins.def | 2 | ||||
-rw-r--r-- | test/Sema/builtins.c | 5 |
2 files changed, 7 insertions, 0 deletions
diff --git a/include/clang/Basic/Builtins.def b/include/clang/Basic/Builtins.def index 9228ab28a5..0da893899b 100644 --- a/include/clang/Basic/Builtins.def +++ b/include/clang/Basic/Builtins.def @@ -286,12 +286,14 @@ BUILTIN(__builtin_stdarg_start, "vA.", "n") BUILTIN(__builtin_bcmp, "iv*v*z", "n") BUILTIN(__builtin_bcopy, "vv*v*z", "n") BUILTIN(__builtin_bzero, "vv*z", "nF") +BUILTIN(__builtin_fprintf, "iP*cC*.", "Fp:1:") BUILTIN(__builtin_memchr, "v*vC*iz", "nF") BUILTIN(__builtin_memcmp, "ivC*vC*z", "nF") BUILTIN(__builtin_memcpy, "v*v*vC*z", "nF") BUILTIN(__builtin_memmove, "v*v*vC*z", "nF") BUILTIN(__builtin_mempcpy, "v*v*vC*z", "nF") BUILTIN(__builtin_memset, "v*v*iz", "nF") +BUILTIN(__builtin_printf, "icC*.", "Fp:0:") BUILTIN(__builtin_stpcpy, "c*c*cC*", "nF") BUILTIN(__builtin_stpncpy, "c*c*cC*z", "nF") BUILTIN(__builtin_strcasecmp, "icC*cC*", "nF") diff --git a/test/Sema/builtins.c b/test/Sema/builtins.c index 7d6d54dbce..787630c1a8 100644 --- a/test/Sema/builtins.c +++ b/test/Sema/builtins.c @@ -90,3 +90,8 @@ void test14() { int old; old = __sync_fetch_and_min((volatile int *)&old, 1); } + +// <rdar://problem/8336581> +void test15(const char *s) { + __builtin_printf("string is %s\n", s); +} |