void Lcd_On(void) {
  (*(volatile unsigned char *)0xF0400) = 0x0f;
  (*(volatile unsigned char *)0xF0401) = 0x0f;
  (*(volatile unsigned char *)0xF0402) = 0x0f;
  (*(volatile unsigned char *)0xF0403) = 0x0f;
  (*(volatile unsigned char *)0xF0404) = 0x0f;
  (*(volatile unsigned char *)0xF0405) = 0x0f;
  (*(volatile unsigned char *)0xF0406) = 0x0f;
  (*(volatile unsigned char *)0xF0407) = 0x0f;
  (*(volatile unsigned char *)0xF0408) = 0x0f;
  (*(volatile unsigned char *)0xF0409) = 0x0f;
  (*(volatile unsigned char *)0xF040A) = 0x07;
  (*(volatile unsigned char *)0xF040B) = 0x0f;
  (*(volatile unsigned char *)0xF040C) = 0x0f;
  (*(volatile unsigned char *)0xF040D) = 0x0f;
  (*(volatile unsigned char *)0xF040E) = 0x0f;
  (*(volatile unsigned char *)0xF040F) = 0x0f;
  (*(volatile unsigned char *)0xF0410) = 0x0f;
  (*(volatile unsigned char *)0xF0413) = 0x0f;
  (*(volatile unsigned char *)0xF0414) = 0x0f;
  (*(volatile unsigned char *)0xF0415) = 0x0f;
  (*(volatile unsigned char *)0xF0416) = 0x0f;
  (*(volatile unsigned char *)0xF0417) = 0x0f;
  (*(volatile unsigned char *)0xF0418) = 0x0f;
  (*(volatile unsigned char *)0xF0419) = 0x0f;
  (*(volatile unsigned char *)0xF041A) = 0x0f;
  (*(volatile unsigned char *)0xF041B) = 0x0f;
  (*(volatile unsigned char *)0xF041C) = 0x01;
  (*(volatile unsigned char *)0xF041F) = 0x0f;
  (*(volatile unsigned char *)0xF0420) = 0x0f;
  (*(volatile unsigned char *)0xF0421) = 0x0f;
  (*(volatile unsigned char *)0xF0422) = 0x0f;
  (*(volatile unsigned char *)0xF0423) = 0x0f;
  (*(volatile unsigned char *)0xF0424) = 0x0f;
  (*(volatile unsigned char *)0xF0425) = 0x0e;
  (*(volatile unsigned char *)0xF0426) = 0x0e;
}


x86 assembly (clang, -O0):
<Lcd_On>:
push   %rbp
mov    %rsp,%rbp
mov    $0xf0400,%eax
movb   $0xf,(%rax)
mov    $0xf0401,%eax
movb   $0xf,(%rax)
mov    $0xf0402,%eax
movb   $0xf,(%rax)
mov    $0xf0403,%eax
movb   $0xf,(%rax)
mov    $0xf0404,%eax
movb   $0xf,(%rax)
mov    $0xf0405,%eax
movb   $0xf,(%rax)
mov    $0xf0406,%eax
movb   $0xf,(%rax)
mov    $0xf0407,%eax
movb   $0xf,(%rax)
mov    $0xf0408,%eax
movb   $0xf,(%rax)
mov    $0xf0409,%eax
movb   $0xf,(%rax)
mov    $0xf040a,%eax
movb   $0x7,(%rax)
mov    $0xf040b,%eax
movb   $0xf,(%rax)
mov    $0xf040c,%eax
movb   $0xf,(%rax)
mov    $0xf040d,%eax
movb   $0xf,(%rax)
mov    $0xf040e,%eax
movb   $0xf,(%rax)
mov    $0xf040f,%eax
movb   $0xf,(%rax)
mov    $0xf0410,%eax
movb   $0xf,(%rax)
mov    $0xf0413,%eax
movb   $0xf,(%rax)
mov    $0xf0414,%eax
movb   $0xf,(%rax)
mov    $0xf0415,%eax
movb   $0xf,(%rax)
mov    $0xf0416,%eax
movb   $0xf,(%rax)
mov    $0xf0417,%eax
movb   $0xf,(%rax)
mov    $0xf0418,%eax
movb   $0xf,(%rax)
mov    $0xf0419,%eax
movb   $0xf,(%rax)
mov    $0xf041a,%eax
movb   $0xf,(%rax)
mov    $0xf041b,%eax
movb   $0xf,(%rax)
mov    $0xf041c,%eax
movb   $0x1,(%rax)
mov    $0xf041f,%eax
movb   $0xf,(%rax)
mov    $0xf0420,%eax
movb   $0xf,(%rax)
mov    $0xf0421,%eax
movb   $0xf,(%rax)
mov    $0xf0422,%eax
movb   $0xf,(%rax)
mov    $0xf0423,%eax
movb   $0xf,(%rax)
mov    $0xf0424,%eax
movb   $0xf,(%rax)
mov    $0xf0425,%eax
movb   $0xe,(%rax)
mov    $0xf0426,%eax
movb   $0xe,(%rax)
pop    %rbp
ret

x86 assembly (clang, -O2):
<Lcd_On>:
movb   $0xf,0xf0400
0f
movb   $0xf,0xf0401
0f
movb   $0xf,0xf0402
0f
movb   $0xf,0xf0403
0f
movb   $0xf,0xf0404
0f
movb   $0xf,0xf0405
0f
movb   $0xf,0xf0406
0f
movb   $0xf,0xf0407
0f
movb   $0xf,0xf0408
0f
movb   $0xf,0xf0409
0f
movb   $0x7,0xf040a
07
movb   $0xf,0xf040b
0f
movb   $0xf,0xf040c
0f
movb   $0xf,0xf040d
0f
movb   $0xf,0xf040e
0f
movb   $0xf,0xf040f
0f
movb   $0xf,0xf0410
0f
movb   $0xf,0xf0413
0f
movb   $0xf,0xf0414
0f
movb   $0xf,0xf0415
0f
movb   $0xf,0xf0416
0f
movb   $0xf,0xf0417
0f
movb   $0xf,0xf0418
0f
movb   $0xf,0xf0419
0f
movb   $0xf,0xf041a
0f
movb   $0xf,0xf041b
0f
movb   $0x1,0xf041c
01
movb   $0xf,0xf041f
0f
movb   $0xf,0xf0420
0f
movb   $0xf,0xf0421
0f
movb   $0xf,0xf0422
0f
movb   $0xf,0xf0423
0f
movb   $0xf,0xf0424
0f
movb   $0xe,0xf0425
0e
movb   $0xe,0xf0426
0e
ret

LLVM IR (-O0):
define void @Lcd_On() {
store volatile i8 15, i8* inttoptr (i64 984064 to i8*)
store volatile i8 15, i8* inttoptr (i64 984065 to i8*)
store volatile i8 15, i8* inttoptr (i64 984066 to i8*)
store volatile i8 15, i8* inttoptr (i64 984067 to i8*)
store volatile i8 15, i8* inttoptr (i64 984068 to i8*)
store volatile i8 15, i8* inttoptr (i64 984069 to i8*)
store volatile i8 15, i8* inttoptr (i64 984070 to i8*)
store volatile i8 15, i8* inttoptr (i64 984071 to i8*)
store volatile i8 15, i8* inttoptr (i64 984072 to i8*)
store volatile i8 15, i8* inttoptr (i64 984073 to i8*)
store volatile i8 7, i8* inttoptr (i64 984074 to i8*)
store volatile i8 15, i8* inttoptr (i64 984075 to i8*)
store volatile i8 15, i8* inttoptr (i64 984076 to i8*)
store volatile i8 15, i8* inttoptr (i64 984077 to i8*)
store volatile i8 15, i8* inttoptr (i64 984078 to i8*)
store volatile i8 15, i8* inttoptr (i64 984079 to i8*)
store volatile i8 15, i8* inttoptr (i64 984080 to i8*)
store volatile i8 15, i8* inttoptr (i64 984083 to i8*)
store volatile i8 15, i8* inttoptr (i64 984084 to i8*)
store volatile i8 15, i8* inttoptr (i64 984085 to i8*)
store volatile i8 15, i8* inttoptr (i64 984086 to i8*)
store volatile i8 15, i8* inttoptr (i64 984087 to i8*)
store volatile i8 15, i8* inttoptr (i64 984088 to i8*)
store volatile i8 15, i8* inttoptr (i64 984089 to i8*)
store volatile i8 15, i8* inttoptr (i64 984090 to i8*)
store volatile i8 15, i8* inttoptr (i64 984091 to i8*)
store volatile i8 1, i8* inttoptr (i64 984092 to i8*)
store volatile i8 15, i8* inttoptr (i64 984095 to i8*)
store volatile i8 15, i8* inttoptr (i64 984096 to i8*)
store volatile i8 15, i8* inttoptr (i64 984097 to i8*)
store volatile i8 15, i8* inttoptr (i64 984098 to i8*)
store volatile i8 15, i8* inttoptr (i64 984099 to i8*)
store volatile i8 15, i8* inttoptr (i64 984100 to i8*)
store volatile i8 14, i8* inttoptr (i64 984101 to i8*)
store volatile i8 14, i8* inttoptr (i64 984102 to i8*)
ret void
}

LLVM IR (-O2):
define void @Lcd_On() {
store volatile i8 15, i8* inttoptr (i64 984064 to i8*)
store volatile i8 15, i8* inttoptr (i64 984065 to i8*)
store volatile i8 15, i8* inttoptr (i64 984066 to i8*)
store volatile i8 15, i8* inttoptr (i64 984067 to i8*)
store volatile i8 15, i8* inttoptr (i64 984068 to i8*)
store volatile i8 15, i8* inttoptr (i64 984069 to i8*)
store volatile i8 15, i8* inttoptr (i64 984070 to i8*)
store volatile i8 15, i8* inttoptr (i64 984071 to i8*)
store volatile i8 15, i8* inttoptr (i64 984072 to i8*)
store volatile i8 15, i8* inttoptr (i64 984073 to i8*)
store volatile i8 7, i8* inttoptr (i64 984074 to i8*)
store volatile i8 15, i8* inttoptr (i64 984075 to i8*)
store volatile i8 15, i8* inttoptr (i64 984076 to i8*)
store volatile i8 15, i8* inttoptr (i64 984077 to i8*)
store volatile i8 15, i8* inttoptr (i64 984078 to i8*)
store volatile i8 15, i8* inttoptr (i64 984079 to i8*)
store volatile i8 15, i8* inttoptr (i64 984080 to i8*)
store volatile i8 15, i8* inttoptr (i64 984083 to i8*)
store volatile i8 15, i8* inttoptr (i64 984084 to i8*)
store volatile i8 15, i8* inttoptr (i64 984085 to i8*)
store volatile i8 15, i8* inttoptr (i64 984086 to i8*)
store volatile i8 15, i8* inttoptr (i64 984087 to i8*)
store volatile i8 15, i8* inttoptr (i64 984088 to i8*)
store volatile i8 15, i8* inttoptr (i64 984089 to i8*)
store volatile i8 15, i8* inttoptr (i64 984090 to i8*)
store volatile i8 15, i8* inttoptr (i64 984091 to i8*)
store volatile i8 1, i8* inttoptr (i64 984092 to i8*)
store volatile i8 15, i8* inttoptr (i64 984095 to i8*)
store volatile i8 15, i8* inttoptr (i64 984096 to i8*)
store volatile i8 15, i8* inttoptr (i64 984097 to i8*)
store volatile i8 15, i8* inttoptr (i64 984098 to i8*)
store volatile i8 15, i8* inttoptr (i64 984099 to i8*)
store volatile i8 15, i8* inttoptr (i64 984100 to i8*)
store volatile i8 14, i8* inttoptr (i64 984101 to i8*)
store volatile i8 14, i8* inttoptr (i64 984102 to i8*)
ret void
}