#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 *, char *);
int _printSlzy() {
  printf(
      "%s\n",
      "Olympic - Slzy tvý mámy (1972)\n-------------\nChvilku vzpomínej, je to "
      "všechno jen pár let\nNa kytaru v duchu hrej, tvoje parta je tu hned\nZ "
      "cigaret je modrej dým, hraje magneťák\nHolka sedla na tvůj klín, nevíš "
      "ani jak,\nnevíš jak.\n\nTvý roky bláznivý chtěly křídla pro svůj "
      "let\nDneska už možná nevíš sám proč tě tenkrát pálil svět\nChtěl jsi "
      "prachy na mejdan, byl to hloupej špás\nKdyž jsi v noci vyšel ven, snad "
      "ses trochu třás,\ntrochu třás\n\nKdyž tě našel noční hlídač\nbyl by to "
      "jen příběh bláznivýho kluka\nNebejt nože ve tvejch dětskej "
      "rukách\nNebejt strachu mohlo to bejt všechno jináč\n\nR.:\nSlzy tvý "
      "mámy šedivý stékají na polštář\nKdo tě zná, se vůbec nediví, že stárne "
      "její tvář\nNečekej úsměv od ženy, který jsi všechno vzal\nJen pro tvý "
      "touhy zborcený,\nléta ztracený,\nty oči pláčou dál.\n\n\nKdyž jsi vyšel "
      "ven, ze žalářních vrat\nMožná, že jsi tenkrát chtěl znovu "
      "začínat\nPoctivejma rukama, jako správnej chlap\nsnad se někdo ušklíb "
      "jen, že jsi křivě šláp,\nkřivě šláp\n\nI když byl někdo k tobě "
      "krutej\nProč jsi znovu začal mezi svejma\nTvůj pocit křivdy se pak "
      "těžko smejvá\nKdyž hledáš vinu vždycky jenom v druhejch. "
      "\n\n\nRef.:...\nSlzy tvý mámy šedivý stékají na polštář\nKdo tě zná, se "
      "vůbec nediví, že stárne její tvář\nNečekej úsměv od ženy, který jsi "
      "všechno vzal\nVrať jí ty touhy zborcený,\nať pro léta ztracený\nnemusí "
      "plakat dál.\n-------------\nChords\nEmi Ami\nD G\nEmi E7\nAmi Emi\nHmi "
      "Emi D Emi D Emi");
}


x86 assembly (clang, -O0):
<_printSlzy>:
push   %rbp
mov    %rsp,%rbp
sub    $0x10,%rsp
lea    0xee1(%rip),%rdi
lea    0xede(%rip),%rsi
call   1030 <printf@plt>
mov    -0x4(%rbp),%eax
add    $0x10,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<_printSlzy>:
lea    0xee9(%rip),%rdi
lea    0xee6(%rip),%rsi
jmp    1030 <printf@plt>

LLVM IR (-O0):
@.str = [4 x i8] c"%s\0A\00"
@.str.1 = [1553 x i8] c"Olympic - Slzy tv\C3\BD m\C3\A1my (1972)\0A-------------\0AChvilku vzpom\C3\ADnej, je to v\C5\A1echno jen p\C3\A1r let\0ANa kytaru v duchu hrej, tvoje parta je tu hned\0AZ cigaret je modrej d\C3\BDm, hraje magne\C5\A5\C3\A1k\0AHolka sedla na tv\C5\AFj kl\C3\ADn, nev\C3\AD\C5\A1 ani jak,\0Anev\C3\AD\C5\A1 jak.\0A\0ATv\C3\BD roky bl\C3\A1zniv\C3\BD cht\C4\9Bly k\C5\99\C3\ADdla pro sv\C5\AFj let\0ADneska u\C5\BE mo\C5\BEn\C3\A1 nev\C3\AD\C5\A1 s\C3\A1m pro\C4\8D t\C4\9B tenkr\C3\A1t p\C3\A1lil sv\C4\9Bt\0ACht\C4\9Bl jsi prachy na mejdan, byl to hloupej \C5\A1p\C3\A1s\0AKdy\C5\BE jsi v noci vy\C5\A1el ven, snad ses trochu t\C5\99\C3\A1s,\0Atrochu t\C5\99\C3\A1s\0A\0AKdy\C5\BE t\C4\9B na\C5\A1el no\C4\8Dn\C3\AD hl\C3\ADda\C4\8D\0Abyl by to jen p\C5\99\C3\ADb\C4\9Bh bl\C3\A1zniv\C3\BDho kluka\0ANebejt no\C5\BEe ve tvejch d\C4\9Btskej ruk\C3\A1ch\0ANebejt strachu mohlo to bejt v\C5\A1echno jin\C3\A1\C4\8D\0A\0AR.:\0ASlzy tv\C3\BD m\C3\A1my \C5\A1ediv\C3\BD st\C3\A9kaj\C3\AD na pol\C5\A1t\C3\A1\C5\99\0AKdo t\C4\9B zn\C3\A1, se v\C5\AFbec nediv\C3\AD, \C5\BEe st\C3\A1rne jej\C3\AD tv\C3\A1\C5\99\0ANe\C4\8Dekej \C3\BAsm\C4\9Bv od \C5\BEeny, kter\C3\BD jsi v\C5\A1echno vzal\0AJen pro tv\C3\BD touhy zborcen\C3\BD,\0Al\C3\A9ta ztracen\C3\BD,\0Aty o\C4\8Di pl\C3\A1\C4\8Dou d\C3\A1l.\0A\0A\0AKdy\C5\BE jsi vy\C5\A1el ven, ze \C5\BEal\C3\A1\C5\99n\C3\ADch vrat\0AMo\C5\BEn\C3\A1, \C5\BEe jsi tenkr\C3\A1t cht\C4\9Bl znovu za\C4\8D\C3\ADnat\0APoctivejma rukama, jako spr\C3\A1vnej chlap\0Asnad se n\C4\9Bkdo u\C5\A1kl\C3\ADb jen, \C5\BEe jsi k\C5\99iv\C4\9B \C5\A1l\C3\A1p,\0Ak\C5\99iv\C4\9B \C5\A1l\C3\A1p\0A\0AI kdy\C5\BE byl n\C4\9Bkdo k tob\C4\9B krutej\0APro\C4\8D jsi znovu za\C4\8Dal mezi svejma\0ATv\C5\AFj pocit k\C5\99ivdy se pak t\C4\9B\C5\BEko smejv\C3\A1\0AKdy\C5\BE hled\C3\A1\C5\A1 vinu v\C5\BEdycky jenom v druhejch. \0A\0A\0ARef.:...\0ASlzy tv\C3\BD m\C3\A1my \C5\A1ediv\C3\BD st\C3\A9kaj\C3\AD na pol\C5\A1t\C3\A1\C5\99\0AKdo t\C4\9B zn\C3\A1, se v\C5\AFbec nediv\C3\AD, \C5\BEe st\C3\A1rne jej\C3\AD tv\C3\A1\C5\99\0ANe\C4\8Dekej \C3\BAsm\C4\9Bv od \C5\BEeny, kter\C3\BD jsi v\C5\A1echno vzal\0AVra\C5\A5 j\C3\AD ty touhy zborcen\C3\BD,\0Aa\C5\A5 pro l\C3\A9ta ztracen\C3\BD\0Anemus\C3\AD plakat d\C3\A1l.\0A-------------\0AChords\0AEmi Ami\0AD G\0AEmi E7\0AAmi Emi\0AHmi Emi D Emi D Emi\00"
define i32 @_printSlzy() {
%1 = alloca i32
%2 = call i32 @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([1553 x i8], [1553 x i8]* @.str.1, i64 0, i64 0))
%3 = load i32, i32* %1
ret i32 %3
}

LLVM IR (-O2):
@.str = [4 x i8] c"%s\0A\00"
@.str.1 = [1553 x i8] c"Olympic - Slzy tv\C3\BD m\C3\A1my (1972)\0A-------------\0AChvilku vzpom\C3\ADnej, je to v\C5\A1echno jen p\C3\A1r let\0ANa kytaru v duchu hrej, tvoje parta je tu hned\0AZ cigaret je modrej d\C3\BDm, hraje magne\C5\A5\C3\A1k\0AHolka sedla na tv\C5\AFj kl\C3\ADn, nev\C3\AD\C5\A1 ani jak,\0Anev\C3\AD\C5\A1 jak.\0A\0ATv\C3\BD roky bl\C3\A1zniv\C3\BD cht\C4\9Bly k\C5\99\C3\ADdla pro sv\C5\AFj let\0ADneska u\C5\BE mo\C5\BEn\C3\A1 nev\C3\AD\C5\A1 s\C3\A1m pro\C4\8D t\C4\9B tenkr\C3\A1t p\C3\A1lil sv\C4\9Bt\0ACht\C4\9Bl jsi prachy na mejdan, byl to hloupej \C5\A1p\C3\A1s\0AKdy\C5\BE jsi v noci vy\C5\A1el ven, snad ses trochu t\C5\99\C3\A1s,\0Atrochu t\C5\99\C3\A1s\0A\0AKdy\C5\BE t\C4\9B na\C5\A1el no\C4\8Dn\C3\AD hl\C3\ADda\C4\8D\0Abyl by to jen p\C5\99\C3\ADb\C4\9Bh bl\C3\A1zniv\C3\BDho kluka\0ANebejt no\C5\BEe ve tvejch d\C4\9Btskej ruk\C3\A1ch\0ANebejt strachu mohlo to bejt v\C5\A1echno jin\C3\A1\C4\8D\0A\0AR.:\0ASlzy tv\C3\BD m\C3\A1my \C5\A1ediv\C3\BD st\C3\A9kaj\C3\AD na pol\C5\A1t\C3\A1\C5\99\0AKdo t\C4\9B zn\C3\A1, se v\C5\AFbec nediv\C3\AD, \C5\BEe st\C3\A1rne jej\C3\AD tv\C3\A1\C5\99\0ANe\C4\8Dekej \C3\BAsm\C4\9Bv od \C5\BEeny, kter\C3\BD jsi v\C5\A1echno vzal\0AJen pro tv\C3\BD touhy zborcen\C3\BD,\0Al\C3\A9ta ztracen\C3\BD,\0Aty o\C4\8Di pl\C3\A1\C4\8Dou d\C3\A1l.\0A\0A\0AKdy\C5\BE jsi vy\C5\A1el ven, ze \C5\BEal\C3\A1\C5\99n\C3\ADch vrat\0AMo\C5\BEn\C3\A1, \C5\BEe jsi tenkr\C3\A1t cht\C4\9Bl znovu za\C4\8D\C3\ADnat\0APoctivejma rukama, jako spr\C3\A1vnej chlap\0Asnad se n\C4\9Bkdo u\C5\A1kl\C3\ADb jen, \C5\BEe jsi k\C5\99iv\C4\9B \C5\A1l\C3\A1p,\0Ak\C5\99iv\C4\9B \C5\A1l\C3\A1p\0A\0AI kdy\C5\BE byl n\C4\9Bkdo k tob\C4\9B krutej\0APro\C4\8D jsi znovu za\C4\8Dal mezi svejma\0ATv\C5\AFj pocit k\C5\99ivdy se pak t\C4\9B\C5\BEko smejv\C3\A1\0AKdy\C5\BE hled\C3\A1\C5\A1 vinu v\C5\BEdycky jenom v druhejch. \0A\0A\0ARef.:...\0ASlzy tv\C3\BD m\C3\A1my \C5\A1ediv\C3\BD st\C3\A9kaj\C3\AD na pol\C5\A1t\C3\A1\C5\99\0AKdo t\C4\9B zn\C3\A1, se v\C5\AFbec nediv\C3\AD, \C5\BEe st\C3\A1rne jej\C3\AD tv\C3\A1\C5\99\0ANe\C4\8Dekej \C3\BAsm\C4\9Bv od \C5\BEeny, kter\C3\BD jsi v\C5\A1echno vzal\0AVra\C5\A5 j\C3\AD ty touhy zborcen\C3\BD,\0Aa\C5\A5 pro l\C3\A9ta ztracen\C3\BD\0Anemus\C3\AD plakat d\C3\A1l.\0A-------------\0AChords\0AEmi Ami\0AD G\0AEmi E7\0AAmi Emi\0AHmi Emi D Emi D Emi\00"
define i32 @_printSlzy() {
%1 = tail call i32 @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([1553 x i8], [1553 x i8]* @.str.1, i64 0, i64 0))
ret i32 undef
}