[PATCH 2/5] lib/vsprintf.c: implement printf() in terms of vprintf()

Rasmus Villemoes rasmus.villemoes at prevas.dk
Thu May 20 12:05:25 CEST 2021


This saves some code, both in terms of #LOC and .text size, and it is
also the normal convention that foo(...) is implemented in terms of
vfoo().

Signed-off-by: Rasmus Villemoes <rasmus.villemoes at prevas.dk>
---
 lib/vsprintf.c | 10 +---------
 1 file changed, 1 insertion(+), 9 deletions(-)

diff --git a/lib/vsprintf.c b/lib/vsprintf.c
index 0050110683..e3bec7489b 100644
--- a/lib/vsprintf.c
+++ b/lib/vsprintf.c
@@ -785,19 +785,11 @@ int printf(const char *fmt, ...)
 {
 	va_list args;
 	uint i;
-	char printbuffer[CONFIG_SYS_PBSIZE];
 
 	va_start(args, fmt);
-
-	/*
-	 * For this to work, printbuffer must be larger than
-	 * anything we ever want to print.
-	 */
-	i = vscnprintf(printbuffer, sizeof(printbuffer), fmt, args);
+	i = vprintf(fmt, args);
 	va_end(args);
 
-	/* Print the string */
-	puts(printbuffer);
 	return i;
 }
 
-- 
2.29.2



More information about the U-Boot mailing list