summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter S. Mazinger <ps.m@gmx.net>2011-03-14 23:11:32 +0100
committerBernhard Reutner-Fischer <rep.dot.nop@gmail.com>2012-06-15 14:00:24 +0200
commit6da1949cb5c4245cfb1fcee1efadb049904be26f (patch)
tree76d9cbe907b4337435aea67335ae431780d874c9
parent0eb904a89cbd1b5fc61cd9fedbf737c55fcaa303 (diff)
use fputwc in putwchar()
use fputwc instead of fputc add hidden fputwc to avoid jump relocation Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
-rw-r--r--include/wchar.h1
-rw-r--r--libc/stdio/fputwc.c2
-rw-r--r--libc/stdio/putwchar.c5
3 files changed, 4 insertions, 4 deletions
diff --git a/include/wchar.h b/include/wchar.h
index aee2b6ee8..099aa9fde 100644
--- a/include/wchar.h
+++ b/include/wchar.h
@@ -656,6 +656,7 @@ extern wint_t getwchar (void);
These functions are possible cancellation points and therefore not
marked with __THROW. */
extern wint_t fputwc (wchar_t __wc, __FILE *__stream);
+libc_hidden_proto(fputwc)
extern wint_t putwc (wchar_t __wc, __FILE *__stream);
/* Write a character to stdout.
diff --git a/libc/stdio/fputwc.c b/libc/stdio/fputwc.c
index 7f46f48b8..b699e9d4b 100644
--- a/libc/stdio/fputwc.c
+++ b/libc/stdio/fputwc.c
@@ -19,6 +19,7 @@ libc_hidden_def(fputwc_unlocked)
strong_alias(fputwc_unlocked,putwc_unlocked)
#ifndef __UCLIBC_HAS_THREADS__
strong_alias(fputwc_unlocked,fputwc)
+libc_hidden_def(fputwc)
strong_alias(fputwc_unlocked,putwc)
#endif
@@ -37,6 +38,7 @@ wint_t fputwc(wchar_t wc, register FILE *stream)
return retval;
}
+libc_hidden_def(fputwc)
strong_alias(fputwc,putwc)
diff --git a/libc/stdio/putwchar.c b/libc/stdio/putwchar.c
index 3fadb61db..96de6a285 100644
--- a/libc/stdio/putwchar.c
+++ b/libc/stdio/putwchar.c
@@ -9,7 +9,6 @@
#ifdef __DO_UNLOCKED
-
wint_t putwchar_unlocked(wchar_t wc)
{
return fputwc_unlocked(wc, stdout);
@@ -21,11 +20,9 @@ strong_alias(putwchar_unlocked,putwchar)
#elif defined __UCLIBC_HAS_THREADS__
-/* psm: should this be fputwc? */
-
wint_t putwchar(wchar_t wc)
{
- return fputc(wc, stdout);
+ return fputwc(wc, stdout);
}
#endif