world: Remove references to %r and %b.
authorzrj <rimvydas.jasinskas@gmail.com>
Sun, 4 Feb 2018 15:32:02 +0000 (17:32 +0200)
committerzrj <zrj@dragonflybsd.org>
Wed, 14 Feb 2018 08:14:14 +0000 (10:14 +0200)
While there, remove %r and %b and %y support from libstand(3).
Those format are not used in loaders and only eat space.

12 files changed:
contrib/gcc-4.7/gcc/c-family/c-format.c
contrib/gcc-5.0/gcc/c-family/c-format.c
lib/libstand/bcd.c
lib/libstand/libstand.3
lib/libstand/printf.c
sbin/ifconfig/ifconfig.c
share/man/man9/kprintf.9
sys/boot/efi/libefi/Makefile
sys/kern/subr_prf.c
usr.sbin/btconfig/btconfig.c
usr.sbin/gifconfig/gifconfig.c
usr.sbin/mlxcontrol/command.c

index 35c0f9a..27d038f 100644 (file)
@@ -620,9 +620,6 @@ static const format_flag_pair strfmon_flag_pairs[] =
 };
 
 
-static const format_char_info dfly_ext_char_info =
-{ NULL,  1, STD_EXT, { T89_C,   BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN }, "",      "cR", NULL };
-
 static const format_char_info print_char_table[] =
 {
   /* C89 conversion specifiers.  */
@@ -643,14 +640,6 @@ static const format_char_info print_char_table[] =
   { "S",   1, STD_EXT, { TEX_W,   BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN }, "-wp",       "R",  NULL },
   /* GNU conversion specifiers.  */
   { "m",   0, STD_EXT, { T89_V,   BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN }, "-wp",       "",   NULL },
-  /* BSD conversion specifiers.  */
-  /* DragonFly kernel extensions (src/sys/kern/subr_prf.c).
-     The format %b is supported to decode error registers.
-     Its usage is:     printf("reg=%b\n", regval, "<base><arg>*");
-     which produces:   reg=3<BITTWO,BITONE>
-   */
-  { "b",   0, STD_EXT, { T89_I,  BADLEN,   BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN }, "-wp",       "",   &dfly_ext_char_info },
-  { "ry",  0, STD_EXT, { T89_I,  BADLEN,   BADLEN,   T89_L,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN }, "-wp0 +#",   "i",  NULL },
   { NULL,  0, STD_C89, NOLENGTHS, NULL, NULL, NULL }
 };
 
index fb2af0d..9b1127b 100644 (file)
@@ -606,9 +606,6 @@ static const format_flag_pair strfmon_flag_pairs[] =
 };
 
 
-static const format_char_info dfly_ext_char_info =
-{ NULL,  1, STD_EXT, { T89_C,   BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN }, "",      "cR", NULL };
-
 static const format_char_info print_char_table[] =
 {
   /* C89 conversion specifiers.  */
@@ -629,14 +626,6 @@ static const format_char_info print_char_table[] =
   { "S",   1, STD_EXT, { TEX_W,   BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN }, "-wp",       "R",  NULL },
   /* GNU conversion specifiers.  */
   { "m",   0, STD_EXT, { T89_V,   BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN }, "-wp",       "",   NULL },
-  /* BSD conversion specifiers.  */
-  /* DragonFly kernel extensions (src/sys/kern/subr_prf.c).
-     The format %b is supported to decode error registers.
-     Its usage is:     printf("reg=%b\n", regval, "<base><arg>*");
-     which produces:   reg=3<BITTWO,BITONE>
-   */
-  { "b",   0, STD_EXT, { T89_I,  BADLEN,   BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN }, "-wp",       "",   &dfly_ext_char_info },
-  { "ry",  0, STD_EXT, { T89_I,  BADLEN,   BADLEN,   T89_L,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN,  BADLEN }, "-wp0 +#",   "i",  NULL },
   { NULL,  0, STD_C89, NOLENGTHS, NULL, NULL, NULL }
 };
 
index 39a8322..9276799 100644 (file)
@@ -3,7 +3,6 @@
  * Cannot be copyrighted.
  *
  * $FreeBSD: src/lib/libstand/bcd.c,v 1.1.1.1.6.1 2000/09/10 01:25:52 ps Exp $
- * $DragonFly: src/lib/libstand/bcd.c,v 1.2 2003/06/17 04:26:51 dillon Exp $
  */
 
 #include <sys/types.h>
index 8c8cf3b..5a787d3 100644 (file)
@@ -24,7 +24,7 @@
 .\"
 .\" $FreeBSD: src/lib/libstand/libstand.3,v 1.5.2.11 2002/06/26 19:14:43 schweikh Exp $
 .\"
-.Dd February 10, 2016
+.Dd February 14, 2018
 .Dt LIBSTAND 3
 .Os
 .Sh NAME
@@ -288,37 +288,6 @@ are supported:
 .Cm c , d , n , o , p , s , u , x .
 The following modifiers are supported:
 .Cm + , - , # , * , 0 , field width , precision , l .
-.Pp
-The
-.Cm b
-conversion is provided to decode error registers.
-Its usage is:
-.Bd -ragged -offset indent
-printf(
-.Qq reg=%b\en ,
-regval,
-.Qq <base><arg>*
-);
-.Ed
-.Pp
-where <base> is the output expressed as a control character, e.g.\& \e10 gives
-octal, \e20 gives hex.
-Each <arg> is a sequence of characters, the first of
-which gives the bit number to be inspected (origin 1) and the next characters
-(up to a character less than 32) give the text to be displayed if the bit is set.
-Thus
-.Bd -ragged -offset indent
-printf(
-.Qq reg=%b\en ,
-3,
-.Qq \e10\e2BITTWO\e1BITONE\en
-);
-.Ed
-.Pp
-would give the output
-.Bd -ragged -offset indent
-reg=3<BITTWO,BITONE>
-.Ed
 .El
 .Sh CHARACTER TESTS AND CONVERSIONS
 .Bl -hang -width 10n
index 44685f6..fdc9858 100644 (file)
@@ -59,8 +59,7 @@ struct snprintf_arg {
 #define MAXNBUF (sizeof(intmax_t) * CHAR_BIT + 1)
 
 static char    *ksprintn (char *buf, uintmax_t num, int base, int *len, int upper);
-static int     kvprintf(const char *, void (*)(int, void *), void *, int,
-                        va_list);
+static int     kvprintf(const char *, void (*)(int, void *), void *, va_list);
 static void    putchar_wrapper(int, void *);
 static void    snprintf_func(int, void *);
 
@@ -77,7 +76,7 @@ printf(const char *fmt, ...)
        int retval;
 
        va_start(ap, fmt);
-       retval = kvprintf(fmt, putchar_wrapper, NULL, 10, ap);
+       retval = kvprintf(fmt, putchar_wrapper, NULL, ap);
        va_end(ap);
        return retval;
 }
@@ -86,7 +85,7 @@ void
 vprintf(const char *fmt, va_list ap)
 {
 
-       kvprintf(fmt, putchar_wrapper, NULL, 10, ap);
+       kvprintf(fmt, putchar_wrapper, NULL, ap);
 }
 
 int
@@ -96,7 +95,7 @@ sprintf(char *buf, const char *cfmt, ...)
        va_list ap;
 
        va_start(ap, cfmt);
-       retval = kvprintf(cfmt, NULL, buf, 10, ap);
+       retval = kvprintf(cfmt, NULL, buf, ap);
        buf[retval] = '\0';
        va_end(ap);
        return retval;
@@ -106,8 +105,8 @@ void
 vsprintf(char *buf, const char *cfmt, va_list ap)
 {
        int     retval;
-       
-       retval = kvprintf(cfmt, NULL, buf, 10, ap);
+
+       retval = kvprintf(cfmt, NULL, buf, ap);
        buf[retval] = '\0';
 }
 
@@ -131,7 +130,7 @@ vsnprintf(char *buf, size_t size, const char *cfmt, va_list ap)
 
        info.buf = buf;
        info.remain = size;
-       retval = kvprintf(cfmt, snprintf_func, &info, 10, ap);
+       retval = kvprintf(cfmt, snprintf_func, &info, ap);
        if (info.remain >= 1)
                *info.buf++ = '\0';
        return(retval);
@@ -172,35 +171,14 @@ ksprintn(char *nbuf, uintmax_t num, int base, int *lenp, int upper)
 
 /*
  * Scaled down version of printf(3).
- *
- * Two additional formats:
- *
- * The format %b is supported to decode error registers.
- * Its usage is:
- *
- *     printf("reg=%b\n", regval, "<base><arg>*");
- *
- * where <base> is the output base expressed as a control character, e.g.
- * \10 gives octal; \20 gives hex.  Each arg is a sequence of characters,
- * the first of which gives the bit number to be inspected (origin 1), and
- * the next characters (up to a control character, i.e. a character <= 32),
- * give the name of the register.  Thus:
- *
- *     kvprintf("reg=%b\n", 3, "\10\2BITTWO\1BITONE\n");
- *
- * would produce output:
- *
- *     reg=3<BITTWO,BITONE>
- *
  */
 static int
-kvprintf(char const *fmt, void (*func)(int, void *), void *arg, int radix,
-        va_list ap)
+kvprintf(char const *fmt, void (*func)(int, void *), void *arg, va_list ap)
 {
 #define PCHAR(c) {int cc=(c); if (func) (*func)(cc, arg); else *d++ = cc; retval++; }
        char nbuf[MAXNBUF];
        char *d;
-       const char *p, *percent, *q;
+       const char *p, *percent;
        int ch, n;
        uintmax_t num;
        int base, lflag, qflag, tmp, width, ladjust, sharpflag, neg, sign, dot;
@@ -218,9 +196,6 @@ kvprintf(char const *fmt, void (*func)(int, void *), void *arg, int radix,
        if (fmt == NULL)
                fmt = "(fmt null)\n";
 
-       if (radix < 2 || radix > 36)
-               radix = 10;
-
        for (;;) {
                padc = ' ';
                width = 0;
@@ -279,29 +254,6 @@ reswitch:  switch (ch = (u_char)*fmt++) {
                        else
                                width = n;
                        goto reswitch;
-               case 'b':
-                       num = (u_int)va_arg(ap, int);
-                       p = va_arg(ap, char *);
-                       for (q = ksprintn(nbuf, num, *p++, NULL, 0); *q;)
-                               PCHAR(*q--);
-
-                       if (num == 0)
-                               break;
-
-                       for (tmp = 0; *p;) {
-                               n = *p++;
-                               if (num & (1 << (n - 1))) {
-                                       PCHAR(tmp ? ',' : '<');
-                                       for (; (n = *p) > ' '; ++p)
-                                               PCHAR(n);
-                                       tmp = 1;
-                               } else
-                                       for (; *p > ' '; ++p)
-                                               continue;
-                       }
-                       if (tmp)
-                               PCHAR('>');
-                       break;
                case 'c':
                        PCHAR(va_arg(ap, int));
                        break;
@@ -355,11 +307,6 @@ reswitch:  switch (ch = (u_char)*fmt++) {
                case 'q':
                        qflag = 1;
                        goto reswitch;
-               case 'r':
-                       base = radix;
-                       if (sign)
-                               goto handle_sign;
-                       goto handle_nosign;
                case 's':
                        p = va_arg(ap, char *);
                        if (p == NULL)
@@ -392,10 +339,6 @@ reswitch:  switch (ch = (u_char)*fmt++) {
                case 'x':
                        base = 16;
                        goto handle_nosign;
-               case 'y':
-                       base = 16;
-                       sign = 1;
-                       goto handle_sign;
                case 'z':
                        zflag = 1;
                        goto reswitch;
index a119be8..926b10b 100644 (file)
@@ -990,7 +990,7 @@ Perror(const char *cmd)
 }
 
 /*
- * Print a value a la the %b format of the kernel's printf
+ * Print a value a la the %pb%i format of the kernel's kprintf()
  */
 void
 printb(const char *s, unsigned v, const char *bits)
index 77f65aa..82e95c4 100644 (file)
@@ -111,11 +111,11 @@ functions add another conversion specifier to
 .Fa format :
 .Pp
 The
-.Cm \&%b
+.Cm \&%pb%i
 identifier expects two arguments: an
-.Vt int
+.Vt "char *"
 and a
-.Vt "char *" .
+.Vt int .
 These are used as a register value and a print mask for decoding bitmasks.
 The print mask is made up of two parts: the base and the
 arguments.
@@ -185,7 +185,7 @@ and
 functions return the number of characters displayed.
 .Sh EXAMPLES
 This example demonstrates the use of the
-.Cm \&%b
+.Cm \&%pb%i
 conversion specifier.
 The function
 .Bd -literal -offset indent
@@ -193,7 +193,7 @@ void
 kprintf_test(void)
 {
 
-       kprintf("reg=%b\en", 3, "\e10\e2BITTWO\e1BITONE\en");
+       kprintf("reg=%pb%i\en", "\e10\e2BITTWO\e1BITONE\en", 3);
 }
 .Ed
 .Pp
index 04c57b1..780c598 100644 (file)
@@ -21,8 +21,6 @@ CFLAGS+= -I${.CURDIR}/../../common
 # Disable stack protector
 CFLAGS+= -fno-stack-protector
 
-# Handle FreeBSD specific %b and %D printf format specifiers
-CFLAGS+= ${FORMAT_EXTENSIONS}
 CFLAGS+= -DTERM_EMU
 
 .include <bsd.lib.mk>
index fa59e95..7ea1736 100644 (file)
@@ -515,7 +515,6 @@ ksprintn(char *nbuf, uintmax_t num, int base, int *lenp, int upper)
  * Two additional formats:
  *
  * The format %pb%i is supported to decode error registers.
- * The use %b format is deprecated.
  * Its usage is:
  *
  *     kprintf("reg=%pb%i\n", "<base><arg>*", regval);
@@ -644,29 +643,6 @@ reswitch:
                        else
                                width = n;
                        goto reswitch;
-               case 'b':
-                       num = (u_int)__va_arg(ap, int);
-                       p = __va_arg(ap, char *);
-                       for (q = ksprintn(nbuf, num, *p++, NULL, 0); *q;)
-                               PCHAR(*q--);
-
-                       if (num == 0)
-                               break;
-
-                       for (tmp = 0; *p;) {
-                               n = *p++;
-                               if (num & (1 << (n - 1))) {
-                                       PCHAR(tmp ? ',' : '<');
-                                       for (; (n = *p) > ' '; ++p)
-                                               PCHAR(n);
-                                       tmp = 1;
-                               } else
-                                       for (; *p > ' '; ++p)
-                                               continue;
-                       }
-                       if (tmp)
-                               PCHAR('>');
-                       break;
                case 'c':
                        PCHAR(__va_arg(ap, int));
                        break;
index b1c2fb8..7437f19 100644 (file)
@@ -1145,7 +1145,7 @@ do_inquiry(void)
 }
 
 /*
- * Print a value a la the %b format of the kernel's printf borrowed
+ * Print a value a la the %pb%i format of the kernel's kprintf() borrowed
  * from ifconfig(8).
  */
 static void
index 5744917..b9c2482 100644 (file)
@@ -815,7 +815,7 @@ in6_getprefix(char *plen, int which)
 #endif
 
 /*
- * Print a value a la the %b format of the kernel's printf
+ * Print a value a la the %pb%i format of the kernel's kprintf()
  */
 static void
 printb(char *s, unsigned int v, char *bits)
index b9b8f36..d3bb8f7 100644 (file)
@@ -437,8 +437,9 @@ controller_print(int unit, void *arg)
            printf("  Firmware Build Number       %d\n", enq.me_firmware_build);
            printf("  Fault Management Type       %d\n", enq.me_fault_mgmt_type);
 #if 0
-           printf("  Features                    %b\n", enq.me_firmware_features,
-                     "\20\4Background Init\3Read Ahead\2MORE\1Cluster\n");
+           printf("  Features                    %pb%i\n",
+                     "\20\4Background Init\3Read Ahead\2MORE\1Cluster\n",
+                     enq.me_firmware_features);
 #endif
        }