int _wprintf_r (struct _reent *ptr, const wchar_t *fmt, ...) { int ret; va_list ap; _REENT_SMALL_CHECK_INIT (ptr); va_start (ap, fmt); ret = _vfwprintf_r (ptr, _stdout_r (ptr), fmt, ap); va_end (ap); return ret; }
int iprintf (const char *fmt, ...) { int ret; va_list ap; struct _reent *ptr = _REENT; _REENT_SMALL_CHECK_INIT (ptr); va_start (ap, fmt); ret = _vfiprintf_r (ptr, _stdout_r (ptr), fmt, ap); va_end (ap); return ret; }
int _puts_r(struct _reent *ptr, const char *s) { size_t c = strlen(s); struct __suio uio; struct __siov iov[2]; iov[0].iov_base = s; iov[0].iov_len = c; iov[1].iov_base = "\n"; iov[1].iov_len = 1; uio.uio_resid = c + 1; uio.uio_iov = &iov[0]; uio.uio_iovcnt = 2; return (__sfvwrite(_stdout_r(ptr), &uio) ? EOF : '\n'); }
int printf (const char *fmt, ...) { int ret; va_list ap; FILE *stdout_ptr; unsigned int irqsave; irqsave = spin_lock_irqsave(); stdout_ptr = _stdout_r (_REENT); spin_unlock_irqrestore(irqsave); va_start (ap, fmt); ret = vfprintf (stdout_ptr, fmt, ap); va_end (ap); return ret; }
_wprintf_r (struct _reent *ptr, const wchar_t *fmt, ...) { int ret; va_list ap; _REENT_SMALL_CHECK_INIT (ptr); va_start (ap, fmt); ret = _vfwprintf_r (ptr, _stdout_r (ptr), fmt, ap); va_end (ap); return ret; } #ifndef _REENT_ONLY int wprintf (const wchar_t *__restrict fmt, ...) { int ret; va_list ap; struct _reent *ptr = _REENT; _REENT_SMALL_CHECK_INIT (ptr); va_start (ap, fmt); ret = _vfwprintf_r (ptr, _stdout_r (ptr), fmt, ap); va_end (ap); return ret; } #endif /* ! _REENT_ONLY */