aboutsummaryrefslogtreecommitdiff
path: root/system/lib/libc/musl/src/stdio/asprintf.c
diff options
context:
space:
mode:
authorJukka Jylänki <jujjyl@gmail.com>2014-05-15 13:14:16 +0300
committerJukka Jylänki <jujjyl@gmail.com>2014-05-23 02:20:06 +0300
commit210bff95040083cdbcdd13b38b2ce190f644528f (patch)
treeb67016280ff0710f702554c42fd1c56ae098686d /system/lib/libc/musl/src/stdio/asprintf.c
parent1e0f6cfda1a48eccc3adf300d4eee71d157cbb7b (diff)
Migrate to using musl libc sprintf family to gain compiled asm.js performance. Keep a copy of handwritten vfprintf and fprintf around to be compatible with the Emscripten filesystem IO library. Also migrate frexp which sprintf depends on to musl libc.
Diffstat (limited to 'system/lib/libc/musl/src/stdio/asprintf.c')
-rw-r--r--system/lib/libc/musl/src/stdio/asprintf.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/system/lib/libc/musl/src/stdio/asprintf.c b/system/lib/libc/musl/src/stdio/asprintf.c
new file mode 100644
index 00000000..4ec83534
--- /dev/null
+++ b/system/lib/libc/musl/src/stdio/asprintf.c
@@ -0,0 +1,13 @@
+#define _GNU_SOURCE
+#include <stdio.h>
+#include <stdarg.h>
+
+int asprintf(char **s, const char *fmt, ...)
+{
+ int ret;
+ va_list ap;
+ va_start(ap, fmt);
+ ret = vasprintf(s, fmt, ap);
+ va_end(ap);
+ return ret;
+}