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 | 334a10a343b3406b0be3da0f1ff8f2f744c64ce7 (patch) | |
| tree | 4da7108dea4a33d6cd295fa7d978a44d7511a045 | |
| parent | 12367e30e04e0f90e1c3b917fb7e596b74ad9a3e (diff) | |
| download | bcm5719-llvm-334a10a343b3406b0be3da0f1ff8f2f744c64ce7.tar.gz bcm5719-llvm-334a10a343b3406b0be3da0f1ff8f2f744c64ce7.zip | |
Implement __builtin_printf, __builtin_fprintf. Fixes <rdar://problem/8336581>.
llvm-svn: 112049
| -rw-r--r-- | clang/include/clang/Basic/Builtins.def | 2 | ||||
| -rw-r--r-- | clang/test/Sema/builtins.c | 5 |
2 files changed, 7 insertions, 0 deletions
diff --git a/clang/include/clang/Basic/Builtins.def b/clang/include/clang/Basic/Builtins.def index 9228ab28a54..0da893899b0 100644 --- a/clang/include/clang/Basic/Builtins.def +++ b/clang/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/clang/test/Sema/builtins.c b/clang/test/Sema/builtins.c index 7d6d54dbce8..787630c1a8c 100644 --- a/clang/test/Sema/builtins.c +++ b/clang/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); +} |

