#define NULL ((void *)0)
typedef unsigned long size_t; // Customize by platform.
typedef long intptr_t;
typedef unsigned long uintptr_t;
typedef long scalar_t__; // Either arithmetic or pointer type.
/* By default, we understand bool (as a convenience). */
typedef int bool;
#define false 0
#define true 1

/* Forward declarations */

/* Type definitions */

/* Variables and functions */
int /*<<< orphan*/ printf(char *);
void help(void) {
  printf("bdfconv [options] filename\n");
  printf("-h          Display this help\n");
  printf("-v          Print log messages\n");
  printf("-b <n>      Font build mode, 0: proportional, 1: common height, 2: "
         "monospace, 3: multiple of 8\n");
  printf("-f <n>      Font format, 0: ucglib font, 1: u8g2 font, 2: u8g2 "
         "uncompressed 8x8 font (enforces -b 3)\n");
  printf("-m 'map'    Unicode ASCII mapping\n");
  printf("-M 'mapfile'    Read Unicode ASCII mapping from file 'mapname'\n");
  printf("-o <file>   C output font file\n");
  printf("-k <file>   C output file with kerning information\n");
  printf("-p <%%>    Minimum distance for kerning in percent of the global "
         "char width (lower values: Smaller gaps, more data)\n");
  printf("-n <name>   C indentifier (font name)\n");
  printf("-d <file>   Overview picture: Enable generation of bdf.tga and "
         "assign BDF font <file> for description\n");
  printf("-l <margin> Overview picture: Set left margin\n");
  printf("-a          Overview picture: Additional font information "
         "(background, orange&blue dot)\n");
  printf("-t          Overview picture: Test string (Woven silk pyjamas "
         "exchanged for blue quartz.)\n");
  printf("-r          Runtime test\n");
  printf("\n");
  printf("map := <mapcmd> { \",\" <mapcmd> }\n");
  printf("mapcmd := <default> | <maprange> | <exclude> | <exclude-kerning>\n");
  printf("default := \"*\"\n");
  printf("maprange := <range> [  \">\" <addexpr> ]        Move specified glyph "
         "<range> to target code <num>\n");
  printf("exclude := \"~\" <range> \n");
  printf("exclude-kerning:= \"x\" <range> \n");
  printf("range := <addexpr> [ \"-\" <addexpr> ]          Select glyphs within "
         "specified range\n");
  printf("addexpr := <mulexpr> [ \"+\" <mulexpr> ]\n");
  printf("mulexpr := <num> [ \"*\" <num> ]\n");
  printf("num := <hexnum> | <decnum>\n");
  printf("hexnum := \"$\" <hexdigit> { <hexdigit> }\n");
  printf("decnum := <decdigit> { <decdigit> }\n");
  printf("decdigit := \"0\" | \"1\" | \"2\" | \"3\" | \"4\" | \"5\" | \"6\" | "
         "\"7\" | \"8\" | \"9\"\n");
  printf("hexdigit := \"a\" | \"b\" | \"c\" | \"d\" | \"e\" | \"f\" | \"A\" | "
         "\"B\" | \"C\" | \"D\" | \"E\" | \"F\" | <decdigit>\n");
  printf("{ } zero, one ore more, [ ] zero or once, | alternative\n");
  printf("example:\n");
  printf("  -m '32-255'     select gylphs from encoding 32 to 255\n");
  printf(
      "  -m '32-255,~64' select gylphs from encoding 32 to 255, exclude '@'\n");
  printf("  -m '32,48-57'   select space, '1', '2', ... '9'\n");
  printf("build modes:\n");
  printf(" -b 0: Most compact, glyph bitmap is minimal\n");
  printf(" -b 1: Like -b 0, but glyph bitmap is extended to the height of the "
         "largest glyph within the selected glyph list.\n");
  printf("       Also the width of the gylphs is extended to cover the delta x "
         "advance.\n");
  printf(" -b 2: Like -b 1, but glyph width is set to the width of the largest "
         "glyph within the selected gylph list.\n");
  printf(" -b 3: Like -b 2, but width and height are forced to be a multiple "
         "of 8.\n");
}


x86 assembly (clang, -O0):
<help>:
push   %rbp
mov    %rsp,%rbp
lea    0xee5(%rip),%rdi
call   1030 <printf@plt>
lea    0xef5(%rip),%rdi
call   1030 <printf@plt>
lea    0xf08(%rip),%rdi
call   1030 <printf@plt>
lea    0xf1c(%rip),%rdi
call   1030 <printf@plt>
lea    0xf70(%rip),%rdi
call   1030 <printf@plt>
lea    0xfca(%rip),%rdi
call   1030 <printf@plt>
lea    0xfe1(%rip),%rdi
call   1030 <printf@plt>
lea    0x1015(%rip),%rdi
call   1030 <printf@plt>
lea    0x1029(%rip),%rdi
call   1030 <printf@plt>
lea    0x1051(%rip),%rdi
call   1030 <printf@plt>
lea    0x10ba(%rip),%rdi
call   1030 <printf@plt>
lea    0x10d5(%rip),%rdi
call   1030 <printf@plt>
lea    0x1130(%rip),%rdi
call   1030 <printf@plt>
lea    0x1153(%rip),%rdi
call   1030 <printf@plt>
lea    0x11a0(%rip),%rdi
call   1030 <printf@plt>
lea    0x11ef(%rip),%rdi
call   1030 <printf@plt>
lea    0x1309(%rip),%rdi
call   1030 <printf@plt>
lea    0x11f1(%rip),%rdi
call   1030 <printf@plt>
lea    0x1207(%rip),%rdi
call   1030 <printf@plt>
lea    0x123d(%rip),%rdi
call   1030 <printf@plt>
lea    0x1241(%rip),%rdi
call   1030 <printf@plt>
lea    0x1296(%rip),%rdi
call   1030 <printf@plt>
lea    0x12a3(%rip),%rdi
call   1030 <printf@plt>
lea    0x12b7(%rip),%rdi
call   1030 <printf@plt>
lea    0x12ff(%rip),%rdi
call   1030 <printf@plt>
lea    0x131b(%rip),%rdi
call   1030 <printf@plt>
lea    0x132f(%rip),%rdi
call   1030 <printf@plt>
lea    0x133f(%rip),%rdi
call   1030 <printf@plt>
lea    0x135c(%rip),%rdi
call   1030 <printf@plt>
lea    0x1375(%rip),%rdi
call   1030 <printf@plt>
lea    0x13b0(%rip),%rdi
call   1030 <printf@plt>
lea    0x1404(%rip),%rdi
call   1030 <printf@plt>
lea    0x1431(%rip),%rdi
call   1030 <printf@plt>
lea    0x142f(%rip),%rdi
call   1030 <printf@plt>
lea    0x145c(%rip),%rdi
call   1030 <printf@plt>
lea    0x1496(%rip),%rdi
call   1030 <printf@plt>
lea    0x14bd(%rip),%rdi
call   1030 <printf@plt>
lea    0x14bf(%rip),%rdi
call   1030 <printf@plt>
lea    0x14e1(%rip),%rdi
call   1030 <printf@plt>
lea    0x1548(%rip),%rdi
call   1030 <printf@plt>
lea    0x158b(%rip),%rdi
call   1030 <printf@plt>
lea    0x15eb(%rip),%rdi
call   1030 <printf@plt>
pop    %rbp
ret

x86 assembly (clang, -O2):
<help>:
push   %rax
lea    0xf3d(%rip),%rdi
call   1040 <puts@plt>
lea    0xf4c(%rip),%rdi
call   1040 <puts@plt>
lea    0xf5e(%rip),%rdi
call   1040 <puts@plt>
lea    0xf71(%rip),%rdi
call   1040 <puts@plt>
lea    0xfc4(%rip),%rdi
call   1040 <puts@plt>
lea    0x101d(%rip),%rdi
call   1040 <puts@plt>
lea    0x1033(%rip),%rdi
call   1040 <puts@plt>
lea    0x1066(%rip),%rdi
call   1040 <puts@plt>
lea    0x1079(%rip),%rdi
call   1040 <puts@plt>
lea    0xe5c(%rip),%rdi
call   1050 <printf@plt>
lea    0x1094(%rip),%rdi
call   1040 <puts@plt>
lea    0x10ae(%rip),%rdi
call   1040 <puts@plt>
lea    0x1108(%rip),%rdi
call   1040 <puts@plt>
lea    0x112a(%rip),%rdi
call   1040 <puts@plt>
lea    0x1176(%rip),%rdi
call   1040 <puts@plt>
lea    0x11c4(%rip),%rdi
call   1040 <puts@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
lea    0x11c7(%rip),%rdi
call   1040 <puts@plt>
lea    0x11dc(%rip),%rdi
call   1040 <puts@plt>
lea    0x1211(%rip),%rdi
call   1040 <puts@plt>
lea    0x1214(%rip),%rdi
call   1040 <puts@plt>
lea    0x1268(%rip),%rdi
call   1040 <puts@plt>
lea    0x1274(%rip),%rdi
call   1040 <puts@plt>
lea    0x1287(%rip),%rdi
call   1040 <puts@plt>
lea    0x12ce(%rip),%rdi
call   1040 <puts@plt>
lea    0x12e9(%rip),%rdi
call   1040 <puts@plt>
lea    0x12fc(%rip),%rdi
call   1040 <puts@plt>
lea    0x130b(%rip),%rdi
call   1040 <puts@plt>
lea    0x1327(%rip),%rdi
call   1040 <puts@plt>
lea    0x133f(%rip),%rdi
call   1040 <puts@plt>
lea    0x1379(%rip),%rdi
call   1040 <puts@plt>
lea    0x13cc(%rip),%rdi
call   1040 <puts@plt>
lea    0x13f8(%rip),%rdi
call   1040 <puts@plt>
lea    0x13f5(%rip),%rdi
call   1040 <puts@plt>
lea    0x1421(%rip),%rdi
call   1040 <puts@plt>
lea    0x145a(%rip),%rdi
call   1040 <puts@plt>
lea    0x1480(%rip),%rdi
call   1040 <puts@plt>
lea    0x1481(%rip),%rdi
call   1040 <puts@plt>
lea    0x14a2(%rip),%rdi
call   1040 <puts@plt>
lea    0x1508(%rip),%rdi
call   1040 <puts@plt>
lea    0x154a(%rip),%rdi
call   1040 <puts@plt>
lea    0x15a9(%rip),%rdi
pop    %rax
jmp    1040 <puts@plt>

LLVM IR (-O0):
@.str = [28 x i8] c"bdfconv [options] filename\0A\00"
@.str.1 = [31 x i8] c"-h Display this help\0A\00"
@.str.2 = [32 x i8] c"-v Print log messages\0A\00"
@.str.3 = [96 x i8] c"-b <n> Font build mode, 0: proportional, 1: common height, 2: monospace, 3: multiple of 8\0A\00"
@.str.4 = [102 x i8] c"-f <n> Font format, 0: ucglib font, 1: u8g2 font, 2: u8g2 uncompressed 8x8 font (enforces -b 3)\0A\00"
@.str.5 = [35 x i8] c"-m 'map' Unicode ASCII mapping\0A\00"
@.str.6 = [64 x i8] c"-M 'mapfile' Read Unicode ASCII mapping from file 'mapname'\0A\00"
@.str.7 = [32 x i8] c"-o <file> C output font file\0A\00"
@.str.8 = [52 x i8] c"-k <file> C output file with kerning information\0A\00"
@.str.9 = [117 x i8] c"-p <%%> Minimum distance for kerning in percent of the global char width (lower values: Smaller gaps, more data)\0A\00"
@.str.10 = [39 x i8] c"-n <name> C indentifier (font name)\0A\00"
@.str.11 = [103 x i8] c"-d <file> Overview picture: Enable generation of bdf.tga and assign BDF font <file> for description\0A\00"
@.str.12 = [47 x i8] c"-l <margin> Overview picture: Set left margin\0A\00"
@.str.13 = [89 x i8] c"-a Overview picture: Additional font information (background, orange&blue dot)\0A\00"
@.str.14 = [91 x i8] c"-t Overview picture: Test string (Woven silk pyjamas exchanged for blue quartz.)\0A\00"
@.str.15 = [26 x i8] c"-r Runtime test\0A\00"
@.str.16 = [2 x i8] c"\0A\00"
@.str.17 = [34 x i8] c"map := <mapcmd> { \22,\22 <mapcmd> }\0A\00"
@.str.18 = [66 x i8] c"mapcmd := <default> | <maprange> | <exclude> | <exclude-kerning>\0A\00"
@.str.19 = [16 x i8] c"default := \22*\22\0A\00"
@.str.20 = [97 x i8] c"maprange := <range> [ \22>\22 <addexpr> ] Move specified glyph <range> to target code <num>\0A\00"
@.str.21 = [25 x i8] c"exclude := \22~\22 <range> \0A\00"
@.str.22 = [32 x i8] c"exclude-kerning:= \22x\22 <range> \0A\00"
@.str.23 = [84 x i8] c"range := <addexpr> [ \22-\22 <addexpr> ] Select glyphs within specified range\0A\00"
@.str.24 = [40 x i8] c"addexpr := <mulexpr> [ \22+\22 <mulexpr> ]\0A\00"
@.str.25 = [32 x i8] c"mulexpr := <num> [ \22*\22 <num> ]\0A\00"
@.str.26 = [28 x i8] c"num := <hexnum> | <decnum>\0A\00"
@.str.27 = [41 x i8] c"hexnum := \22$\22 <hexdigit> { <hexdigit> }\0A\00"
@.str.28 = [37 x i8] c"decnum := <decdigit> { <decdigit> }\0A\00"
@.str.29 = [71 x i8] c"decdigit := \220\22 | \221\22 | \222\22 | \223\22 | \224\22 | \225\22 | \226\22 | \227\22 | \228\22 | \229\22\0A\00"
@.str.30 = [96 x i8] c"hexdigit := \22a\22 | \22b\22 | \22c\22 | \22d\22 | \22e\22 | \22f\22 | \22A\22 | \22B\22 | \22C\22 | \22D\22 | \22E\22 | \22F\22 | <decdigit>\0A\00"
@.str.31 = [57 x i8] c"{ } zero, one ore more, [ ] zero or once, | alternative\0A\00"
@.str.32 = [10 x i8] c"example:\0A\00"
@.str.33 = [57 x i8] c" -m '32-255' select gylphs from encoding 32 to 255\0A\00"
@.str.34 = [70 x i8] c" -m '32-255,~64' select gylphs from encoding 32 to 255, exclude '@'\0A\00"
@.str.35 = [51 x i8] c" -m '32,48-57' select space, '1', '2', ... '9'\0A\00"
@.str.36 = [14 x i8] c"build modes:\0A\00"
@.str.37 = [46 x i8] c" -b 0: Most compact, glyph bitmap is minimal\0A\00"
@.str.38 = [115 x i8] c" -b 1: Like -b 0, but glyph bitmap is extended to the height of the largest glyph within the selected glyph list.\0A\00"
@.str.39 = [79 x i8] c" Also the width of the gylphs is extended to cover the delta x advance.\0A\00"
@.str.40 = [108 x i8] c" -b 2: Like -b 1, but glyph width is set to the width of the largest glyph within the selected gylph list.\0A\00"
@.str.41 = [74 x i8] c" -b 3: Like -b 2, but width and height are forced to be a multiple of 8.\0A\00"
define void @help() {
%1 = call i32 @printf(i8* getelementptr inbounds ([28 x i8], [28 x i8]* @.str, i64 0, i64 0))
%2 = call i32 @printf(i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.1, i64 0, i64 0))
%3 = call i32 @printf(i8* getelementptr inbounds ([32 x i8], [32 x i8]* @.str.2, i64 0, i64 0))
%4 = call i32 @printf(i8* getelementptr inbounds ([96 x i8], [96 x i8]* @.str.3, i64 0, i64 0))
%5 = call i32 @printf(i8* getelementptr inbounds ([102 x i8], [102 x i8]* @.str.4, i64 0, i64 0))
%6 = call i32 @printf(i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.5, i64 0, i64 0))
%7 = call i32 @printf(i8* getelementptr inbounds ([64 x i8], [64 x i8]* @.str.6, i64 0, i64 0))
%8 = call i32 @printf(i8* getelementptr inbounds ([32 x i8], [32 x i8]* @.str.7, i64 0, i64 0))
%9 = call i32 @printf(i8* getelementptr inbounds ([52 x i8], [52 x i8]* @.str.8, i64 0, i64 0))
%10 = call i32 @printf(i8* getelementptr inbounds ([117 x i8], [117 x i8]* @.str.9, i64 0, i64 0))
%11 = call i32 @printf(i8* getelementptr inbounds ([39 x i8], [39 x i8]* @.str.10, i64 0, i64 0))
%12 = call i32 @printf(i8* getelementptr inbounds ([103 x i8], [103 x i8]* @.str.11, i64 0, i64 0))
%13 = call i32 @printf(i8* getelementptr inbounds ([47 x i8], [47 x i8]* @.str.12, i64 0, i64 0))
%14 = call i32 @printf(i8* getelementptr inbounds ([89 x i8], [89 x i8]* @.str.13, i64 0, i64 0))
%15 = call i32 @printf(i8* getelementptr inbounds ([91 x i8], [91 x i8]* @.str.14, i64 0, i64 0))
%16 = call i32 @printf(i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.15, i64 0, i64 0))
%17 = call i32 @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.16, i64 0, i64 0))
%18 = call i32 @printf(i8* getelementptr inbounds ([34 x i8], [34 x i8]* @.str.17, i64 0, i64 0))
%19 = call i32 @printf(i8* getelementptr inbounds ([66 x i8], [66 x i8]* @.str.18, i64 0, i64 0))
%20 = call i32 @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.19, i64 0, i64 0))
%21 = call i32 @printf(i8* getelementptr inbounds ([97 x i8], [97 x i8]* @.str.20, i64 0, i64 0))
%22 = call i32 @printf(i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.21, i64 0, i64 0))
%23 = call i32 @printf(i8* getelementptr inbounds ([32 x i8], [32 x i8]* @.str.22, i64 0, i64 0))
%24 = call i32 @printf(i8* getelementptr inbounds ([84 x i8], [84 x i8]* @.str.23, i64 0, i64 0))
%25 = call i32 @printf(i8* getelementptr inbounds ([40 x i8], [40 x i8]* @.str.24, i64 0, i64 0))
%26 = call i32 @printf(i8* getelementptr inbounds ([32 x i8], [32 x i8]* @.str.25, i64 0, i64 0))
%27 = call i32 @printf(i8* getelementptr inbounds ([28 x i8], [28 x i8]* @.str.26, i64 0, i64 0))
%28 = call i32 @printf(i8* getelementptr inbounds ([41 x i8], [41 x i8]* @.str.27, i64 0, i64 0))
%29 = call i32 @printf(i8* getelementptr inbounds ([37 x i8], [37 x i8]* @.str.28, i64 0, i64 0))
%30 = call i32 @printf(i8* getelementptr inbounds ([71 x i8], [71 x i8]* @.str.29, i64 0, i64 0))
%31 = call i32 @printf(i8* getelementptr inbounds ([96 x i8], [96 x i8]* @.str.30, i64 0, i64 0))
%32 = call i32 @printf(i8* getelementptr inbounds ([57 x i8], [57 x i8]* @.str.31, i64 0, i64 0))
%33 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.32, i64 0, i64 0))
%34 = call i32 @printf(i8* getelementptr inbounds ([57 x i8], [57 x i8]* @.str.33, i64 0, i64 0))
%35 = call i32 @printf(i8* getelementptr inbounds ([70 x i8], [70 x i8]* @.str.34, i64 0, i64 0))
%36 = call i32 @printf(i8* getelementptr inbounds ([51 x i8], [51 x i8]* @.str.35, i64 0, i64 0))
%37 = call i32 @printf(i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.36, i64 0, i64 0))
%38 = call i32 @printf(i8* getelementptr inbounds ([46 x i8], [46 x i8]* @.str.37, i64 0, i64 0))
%39 = call i32 @printf(i8* getelementptr inbounds ([115 x i8], [115 x i8]* @.str.38, i64 0, i64 0))
%40 = call i32 @printf(i8* getelementptr inbounds ([79 x i8], [79 x i8]* @.str.39, i64 0, i64 0))
%41 = call i32 @printf(i8* getelementptr inbounds ([108 x i8], [108 x i8]* @.str.40, i64 0, i64 0))
%42 = call i32 @printf(i8* getelementptr inbounds ([74 x i8], [74 x i8]* @.str.41, i64 0, i64 0))
ret void
}

LLVM IR (-O2):
@.str.9 = [117 x i8] c"-p <%%> Minimum distance for kerning in percent of the global char width (lower values: Smaller gaps, more data)\0A\00"
@str = [27 x i8] c"bdfconv [options] filename\00"
@str.42 = [30 x i8] c"-h Display this help\00"
@str.43 = [31 x i8] c"-v Print log messages\00"
@str.44 = [95 x i8] c"-b <n> Font build mode, 0: proportional, 1: common height, 2: monospace, 3: multiple of 8\00"
@str.45 = [101 x i8] c"-f <n> Font format, 0: ucglib font, 1: u8g2 font, 2: u8g2 uncompressed 8x8 font (enforces -b 3)\00"
@str.46 = [34 x i8] c"-m 'map' Unicode ASCII mapping\00"
@str.47 = [63 x i8] c"-M 'mapfile' Read Unicode ASCII mapping from file 'mapname'\00"
@str.48 = [31 x i8] c"-o <file> C output font file\00"
@str.49 = [51 x i8] c"-k <file> C output file with kerning information\00"
@str.50 = [38 x i8] c"-n <name> C indentifier (font name)\00"
@str.51 = [102 x i8] c"-d <file> Overview picture: Enable generation of bdf.tga and assign BDF font <file> for description\00"
@str.52 = [46 x i8] c"-l <margin> Overview picture: Set left margin\00"
@str.53 = [88 x i8] c"-a Overview picture: Additional font information (background, orange&blue dot)\00"
@str.54 = [90 x i8] c"-t Overview picture: Test string (Woven silk pyjamas exchanged for blue quartz.)\00"
@str.55 = [25 x i8] c"-r Runtime test\00"
@str.56 = [33 x i8] c"map := <mapcmd> { \22,\22 <mapcmd> }\00"
@str.57 = [65 x i8] c"mapcmd := <default> | <maprange> | <exclude> | <exclude-kerning>\00"
@str.58 = [15 x i8] c"default := \22*\22\00"
@str.59 = [96 x i8] c"maprange := <range> [ \22>\22 <addexpr> ] Move specified glyph <range> to target code <num>\00"
@str.60 = [24 x i8] c"exclude := \22~\22 <range> \00"
@str.61 = [31 x i8] c"exclude-kerning:= \22x\22 <range> \00"
@str.62 = [83 x i8] c"range := <addexpr> [ \22-\22 <addexpr> ] Select glyphs within specified range\00"
@str.63 = [39 x i8] c"addexpr := <mulexpr> [ \22+\22 <mulexpr> ]\00"
@str.64 = [31 x i8] c"mulexpr := <num> [ \22*\22 <num> ]\00"
@str.65 = [27 x i8] c"num := <hexnum> | <decnum>\00"
@str.66 = [40 x i8] c"hexnum := \22$\22 <hexdigit> { <hexdigit> }\00"
@str.67 = [36 x i8] c"decnum := <decdigit> { <decdigit> }\00"
@str.68 = [70 x i8] c"decdigit := \220\22 | \221\22 | \222\22 | \223\22 | \224\22 | \225\22 | \226\22 | \227\22 | \228\22 | \229\22\00"
@str.69 = [95 x i8] c"hexdigit := \22a\22 | \22b\22 | \22c\22 | \22d\22 | \22e\22 | \22f\22 | \22A\22 | \22B\22 | \22C\22 | \22D\22 | \22E\22 | \22F\22 | <decdigit>\00"
@str.70 = [56 x i8] c"{ } zero, one ore more, [ ] zero or once, | alternative\00"
@str.71 = [9 x i8] c"example:\00"
@str.72 = [56 x i8] c" -m '32-255' select gylphs from encoding 32 to 255\00"
@str.73 = [69 x i8] c" -m '32-255,~64' select gylphs from encoding 32 to 255, exclude '@'\00"
@str.74 = [50 x i8] c" -m '32,48-57' select space, '1', '2', ... '9'\00"
@str.75 = [13 x i8] c"build modes:\00"
@str.76 = [45 x i8] c" -b 0: Most compact, glyph bitmap is minimal\00"
@str.77 = [114 x i8] c" -b 1: Like -b 0, but glyph bitmap is extended to the height of the largest glyph within the selected glyph list.\00"
@str.78 = [78 x i8] c" Also the width of the gylphs is extended to cover the delta x advance.\00"
@str.79 = [107 x i8] c" -b 2: Like -b 1, but glyph width is set to the width of the largest glyph within the selected gylph list.\00"
@str.80 = [73 x i8] c" -b 3: Like -b 2, but width and height are forced to be a multiple of 8.\00"
define void @help() {
%1 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([27 x i8], [27 x i8]* @str, i64 0, i64 0))
%2 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([30 x i8], [30 x i8]* @str.42, i64 0, i64 0))
%3 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([31 x i8], [31 x i8]* @str.43, i64 0, i64 0))
%4 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([95 x i8], [95 x i8]* @str.44, i64 0, i64 0))
%5 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([101 x i8], [101 x i8]* @str.45, i64 0, i64 0))
%6 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([34 x i8], [34 x i8]* @str.46, i64 0, i64 0))
%7 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([63 x i8], [63 x i8]* @str.47, i64 0, i64 0))
%8 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([31 x i8], [31 x i8]* @str.48, i64 0, i64 0))
%9 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([51 x i8], [51 x i8]* @str.49, i64 0, i64 0))
%10 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([117 x i8], [117 x i8]* @.str.9, i64 0, i64 0))
%11 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([38 x i8], [38 x i8]* @str.50, i64 0, i64 0))
%12 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([102 x i8], [102 x i8]* @str.51, i64 0, i64 0))
%13 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([46 x i8], [46 x i8]* @str.52, i64 0, i64 0))
%14 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([88 x i8], [88 x i8]* @str.53, i64 0, i64 0))
%15 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([90 x i8], [90 x i8]* @str.54, i64 0, i64 0))
%16 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([25 x i8], [25 x i8]* @str.55, i64 0, i64 0))
%17 = tail call i32 @putchar(i32 10)
%18 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([33 x i8], [33 x i8]* @str.56, i64 0, i64 0))
%19 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([65 x i8], [65 x i8]* @str.57, i64 0, i64 0))
%20 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([15 x i8], [15 x i8]* @str.58, i64 0, i64 0))
%21 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([96 x i8], [96 x i8]* @str.59, i64 0, i64 0))
%22 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([24 x i8], [24 x i8]* @str.60, i64 0, i64 0))
%23 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([31 x i8], [31 x i8]* @str.61, i64 0, i64 0))
%24 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([83 x i8], [83 x i8]* @str.62, i64 0, i64 0))
%25 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([39 x i8], [39 x i8]* @str.63, i64 0, i64 0))
%26 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([31 x i8], [31 x i8]* @str.64, i64 0, i64 0))
%27 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([27 x i8], [27 x i8]* @str.65, i64 0, i64 0))
%28 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([40 x i8], [40 x i8]* @str.66, i64 0, i64 0))
%29 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([36 x i8], [36 x i8]* @str.67, i64 0, i64 0))
%30 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([70 x i8], [70 x i8]* @str.68, i64 0, i64 0))
%31 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([95 x i8], [95 x i8]* @str.69, i64 0, i64 0))
%32 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([56 x i8], [56 x i8]* @str.70, i64 0, i64 0))
%33 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([9 x i8], [9 x i8]* @str.71, i64 0, i64 0))
%34 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([56 x i8], [56 x i8]* @str.72, i64 0, i64 0))
%35 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([69 x i8], [69 x i8]* @str.73, i64 0, i64 0))
%36 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([50 x i8], [50 x i8]* @str.74, i64 0, i64 0))
%37 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([13 x i8], [13 x i8]* @str.75, i64 0, i64 0))
%38 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([45 x i8], [45 x i8]* @str.76, i64 0, i64 0))
%39 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([114 x i8], [114 x i8]* @str.77, i64 0, i64 0))
%40 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([78 x i8], [78 x i8]* @str.78, i64 0, i64 0))
%41 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([107 x i8], [107 x i8]* @str.79, i64 0, i64 0))
%42 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([73 x i8], [73 x i8]* @str.80, i64 0, i64 0))
ret void
}