#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*/ kml_write_xml(int, char *);
void kml_gc_make_ballonstyle(void) {
  kml_write_xml(1, "<Style id=\"geocache\"><BalloonStyle><text><![CDATA[\n");
  kml_write_xml(
      0, "<a href=\"http://www.geocaching.com\"><img "
         "src=\"http://www.geocaching.com/images/nav/logo_sub.gif\"> </a>\n");
  kml_write_xml(0, "<p><a "
                   "href=\"http://www.geocaching.com/seek/"
                   "cache_details.aspx?wp=$[gc_num]\"><b>$[gc_num]</b></a> "
                   "<b>$[gc_name]</b> \n");
  kml_write_xml(0, "a $[gc_type], by <b>$[gc_placer]</b> [<a "
                   "href=\"http://www.geocaching.com/"
                   "profile?id=$[gc_placer_id]\">profile</a>]<br/>\n");
  kml_write_xml(0,
                "(ratings out of 5 stars. 1 is easiest, 5 is hardest)<br/>\n");
  kml_write_xml(
      0, "Difficulty: <img "
         "src=\"http://www.geocaching.com/images/stars/$[gc_diff_stars].gif\" "
         "alt=\"$[gc_diff]\" width=\"61\" height=\"13\">\n");
  kml_write_xml(
      0, "&nbsp;Terrain: <img "
         "src=\"http://www.geocaching.com/images/stars/$[gc_terr_stars].gif\" "
         "alt=\"$[gc_terr]\" width=\"61\" height=\"13\"><br />\n");
  kml_write_xml(0, "Size: <img "
                   "src=\"http://www.geocaching.com/images/icons/container/"
                   "$[gc_cont_icon].gif\" width=\"45\" "
                   "height=\"12\">&nbsp;($[gc_cont_icon])<br />\n");
  kml_write_xml(0, "$[gc_issues]\n");
  kml_write_xml(0, "$[gc_short_desc]\n");
  kml_write_xml(0, "$[gc_long_desc]\n");
  kml_write_xml(-1, "]]></text></BalloonStyle></Style>\n");
}


x86 assembly (clang, -O0):
<kml_gc_make_ballonstyle>:
push   %rbp
mov    %rsp,%rbp
mov    $0x1,%edi
lea    0xee0(%rip),%rsi
call   1030 <kml_write_xml@plt>
xor    %edi,%edi
lea    0xf06(%rip),%rsi
call   1030 <kml_write_xml@plt>
xor    %edi,%edi
lea    0xf60(%rip),%rsi
call   1030 <kml_write_xml@plt>
xor    %edi,%edi
lea    0xfc7(%rip),%rsi
call   1030 <kml_write_xml@plt>
xor    %edi,%edi
lea    0x1031(%rip),%rsi
call   1030 <kml_write_xml@plt>
xor    %edi,%edi
lea    0x105e(%rip),%rsi
call   1030 <kml_write_xml@plt>
xor    %edi,%edi
lea    0x10cd(%rip),%rsi
call   1030 <kml_write_xml@plt>
xor    %edi,%edi
lea    0x1145(%rip),%rsi
call   1030 <kml_write_xml@plt>
xor    %edi,%edi
lea    0x11c3(%rip),%rsi
call   1030 <kml_write_xml@plt>
xor    %edi,%edi
lea    0x11c3(%rip),%rsi
call   1030 <kml_write_xml@plt>
xor    %edi,%edi
lea    0x11c7(%rip),%rsi
call   1030 <kml_write_xml@plt>
mov    $0xffffffff,%edi
lea    0x11c7(%rip),%rsi
call   1030 <kml_write_xml@plt>
pop    %rbp
ret

x86 assembly (clang, -O2):
<kml_gc_make_ballonstyle>:
push   %rax
lea    0xee8(%rip),%rsi
mov    $0x1,%edi
call   1030 <kml_write_xml@plt>
lea    0xf0b(%rip),%rsi
xor    %edi,%edi
call   1030 <kml_write_xml@plt>
lea    0xf65(%rip),%rsi
xor    %edi,%edi
call   1030 <kml_write_xml@plt>
lea    0xfcc(%rip),%rsi
xor    %edi,%edi
call   1030 <kml_write_xml@plt>
lea    0x1036(%rip),%rsi
xor    %edi,%edi
call   1030 <kml_write_xml@plt>
lea    0x1063(%rip),%rsi
xor    %edi,%edi
call   1030 <kml_write_xml@plt>
lea    0x10d2(%rip),%rsi
xor    %edi,%edi
call   1030 <kml_write_xml@plt>
lea    0x114a(%rip),%rsi
xor    %edi,%edi
call   1030 <kml_write_xml@plt>
lea    0x11c8(%rip),%rsi
xor    %edi,%edi
call   1030 <kml_write_xml@plt>
lea    0x11c8(%rip),%rsi
xor    %edi,%edi
call   1030 <kml_write_xml@plt>
lea    0x11cc(%rip),%rsi
xor    %edi,%edi
call   1030 <kml_write_xml@plt>
lea    0x11cf(%rip),%rsi
mov    $0xffffffff,%edi
pop    %rax
jmp    1030 <kml_write_xml@plt>

LLVM IR (-O0):
@.str = [52 x i8] c"<Style id=\22geocache\22><BalloonStyle><text><![CDATA[\0A\00"
@.str.1 = [104 x i8] c"<a href=\22http://www.geocaching.com\22><img src=\22http://www.geocaching.com/images/nav/logo_sub.gif\22> </a>\0A\00"
@.str.2 = [117 x i8] c"<p><a href=\22http://www.geocaching.com/seek/cache_details.aspx?wp=$[gc_num]\22><b>$[gc_num]</b></a> <b>$[gc_name]</b> \0A\00"
@.str.3 = [120 x i8] c"a $[gc_type], by <b>$[gc_placer]</b> [<a href=\22http://www.geocaching.com/profile?id=$[gc_placer_id]\22>profile</a>]<br/>\0A\00"
@.str.4 = [59 x i8] c"(ratings out of 5 stars. 1 is easiest, 5 is hardest)<br/>\0A\00"
@.str.5 = [125 x i8] c"Difficulty: <img src=\22http://www.geocaching.com/images/stars/$[gc_diff_stars].gif\22 alt=\22$[gc_diff]\22 width=\2261\22 height=\2213\22>\0A\00"
@.str.6 = [134 x i8] c"&nbsp;Terrain: <img src=\22http://www.geocaching.com/images/stars/$[gc_terr_stars].gif\22 alt=\22$[gc_terr]\22 width=\2261\22 height=\2213\22><br />\0A\00"
@.str.7 = [140 x i8] c"Size: <img src=\22http://www.geocaching.com/images/icons/container/$[gc_cont_icon].gif\22 width=\2245\22 height=\2212\22>&nbsp;($[gc_cont_icon])<br />\0A\00"
@.str.8 = [14 x i8] c"$[gc_issues]\0A\00"
@.str.9 = [18 x i8] c"$[gc_short_desc]\0A\00"
@.str.10 = [17 x i8] c"$[gc_long_desc]\0A\00"
@.str.11 = [35 x i8] c"]]></text></BalloonStyle></Style>\0A\00"
define void @kml_gc_make_ballonstyle() {
%1 = call i32 @kml_write_xml(i32 1, i8* getelementptr inbounds ([52 x i8], [52 x i8]* @.str, i64 0, i64 0))
%2 = call i32 @kml_write_xml(i32 0, i8* getelementptr inbounds ([104 x i8], [104 x i8]* @.str.1, i64 0, i64 0))
%3 = call i32 @kml_write_xml(i32 0, i8* getelementptr inbounds ([117 x i8], [117 x i8]* @.str.2, i64 0, i64 0))
%4 = call i32 @kml_write_xml(i32 0, i8* getelementptr inbounds ([120 x i8], [120 x i8]* @.str.3, i64 0, i64 0))
%5 = call i32 @kml_write_xml(i32 0, i8* getelementptr inbounds ([59 x i8], [59 x i8]* @.str.4, i64 0, i64 0))
%6 = call i32 @kml_write_xml(i32 0, i8* getelementptr inbounds ([125 x i8], [125 x i8]* @.str.5, i64 0, i64 0))
%7 = call i32 @kml_write_xml(i32 0, i8* getelementptr inbounds ([134 x i8], [134 x i8]* @.str.6, i64 0, i64 0))
%8 = call i32 @kml_write_xml(i32 0, i8* getelementptr inbounds ([140 x i8], [140 x i8]* @.str.7, i64 0, i64 0))
%9 = call i32 @kml_write_xml(i32 0, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.8, i64 0, i64 0))
%10 = call i32 @kml_write_xml(i32 0, i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.9, i64 0, i64 0))
%11 = call i32 @kml_write_xml(i32 0, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.10, i64 0, i64 0))
%12 = call i32 @kml_write_xml(i32 -1, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.11, i64 0, i64 0))
ret void
}

LLVM IR (-O2):
@.str = [52 x i8] c"<Style id=\22geocache\22><BalloonStyle><text><![CDATA[\0A\00"
@.str.1 = [104 x i8] c"<a href=\22http://www.geocaching.com\22><img src=\22http://www.geocaching.com/images/nav/logo_sub.gif\22> </a>\0A\00"
@.str.2 = [117 x i8] c"<p><a href=\22http://www.geocaching.com/seek/cache_details.aspx?wp=$[gc_num]\22><b>$[gc_num]</b></a> <b>$[gc_name]</b> \0A\00"
@.str.3 = [120 x i8] c"a $[gc_type], by <b>$[gc_placer]</b> [<a href=\22http://www.geocaching.com/profile?id=$[gc_placer_id]\22>profile</a>]<br/>\0A\00"
@.str.4 = [59 x i8] c"(ratings out of 5 stars. 1 is easiest, 5 is hardest)<br/>\0A\00"
@.str.5 = [125 x i8] c"Difficulty: <img src=\22http://www.geocaching.com/images/stars/$[gc_diff_stars].gif\22 alt=\22$[gc_diff]\22 width=\2261\22 height=\2213\22>\0A\00"
@.str.6 = [134 x i8] c"&nbsp;Terrain: <img src=\22http://www.geocaching.com/images/stars/$[gc_terr_stars].gif\22 alt=\22$[gc_terr]\22 width=\2261\22 height=\2213\22><br />\0A\00"
@.str.7 = [140 x i8] c"Size: <img src=\22http://www.geocaching.com/images/icons/container/$[gc_cont_icon].gif\22 width=\2245\22 height=\2212\22>&nbsp;($[gc_cont_icon])<br />\0A\00"
@.str.8 = [14 x i8] c"$[gc_issues]\0A\00"
@.str.9 = [18 x i8] c"$[gc_short_desc]\0A\00"
@.str.10 = [17 x i8] c"$[gc_long_desc]\0A\00"
@.str.11 = [35 x i8] c"]]></text></BalloonStyle></Style>\0A\00"
define void @kml_gc_make_ballonstyle() {
%1 = tail call i32 @kml_write_xml(i32 1, i8* getelementptr inbounds ([52 x i8], [52 x i8]* @.str, i64 0, i64 0))
%2 = tail call i32 @kml_write_xml(i32 0, i8* getelementptr inbounds ([104 x i8], [104 x i8]* @.str.1, i64 0, i64 0))
%3 = tail call i32 @kml_write_xml(i32 0, i8* getelementptr inbounds ([117 x i8], [117 x i8]* @.str.2, i64 0, i64 0))
%4 = tail call i32 @kml_write_xml(i32 0, i8* getelementptr inbounds ([120 x i8], [120 x i8]* @.str.3, i64 0, i64 0))
%5 = tail call i32 @kml_write_xml(i32 0, i8* getelementptr inbounds ([59 x i8], [59 x i8]* @.str.4, i64 0, i64 0))
%6 = tail call i32 @kml_write_xml(i32 0, i8* getelementptr inbounds ([125 x i8], [125 x i8]* @.str.5, i64 0, i64 0))
%7 = tail call i32 @kml_write_xml(i32 0, i8* getelementptr inbounds ([134 x i8], [134 x i8]* @.str.6, i64 0, i64 0))
%8 = tail call i32 @kml_write_xml(i32 0, i8* getelementptr inbounds ([140 x i8], [140 x i8]* @.str.7, i64 0, i64 0))
%9 = tail call i32 @kml_write_xml(i32 0, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.8, i64 0, i64 0))
%10 = tail call i32 @kml_write_xml(i32 0, i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.9, i64 0, i64 0))
%11 = tail call i32 @kml_write_xml(i32 0, i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.10, i64 0, i64 0))
%12 = tail call i32 @kml_write_xml(i32 -1, i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.11, i64 0, i64 0))
ret void
}