Skip to content

Instantly share code, notes, and snippets.

@igorw
Created November 29, 2014 01:51
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save igorw/c8f17c4567b6d67f98c5 to your computer and use it in GitHub Desktop.
Save igorw/c8f17c4567b6d67f98c5 to your computer and use it in GitHub Desktop.
.comm tape,4000,32
.globl i
.data
.align 8
.type i, @object
.size i, 8
i:
.quad tape
.section .rodata
.stty:
.string "stty -icanon"
.text
.globl main
.type main, @function
main:
.cfi_startproc
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_offset 6, -16
movq %rsp, %rbp
.cfi_def_cfa_register 6
movl $.stty, %edi
call system
# [
.loops1:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope1
# .
movq i(%rip), %rax
movzbl (%rax), %eax
movsbl %al, %eax
movl %eax, %edi
call putchar
# .
movq i(%rip), %rax
movzbl (%rax), %eax
movsbl %al, %eax
movl %eax, %edi
call putchar
# .
movq i(%rip), %rax
movzbl (%rax), %eax
movsbl %al, %eax
movl %eax, %edi
call putchar
# ]
jmp .loops1
.loope1:
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $10, %edx
movb %dl, (%rax)
# [
.loops2:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope2
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $10, %edx
movb %dl, (%rax)
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops2
.loope2:
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# [
.loops3:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope3
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# ]
jmp .loops3
.loope3:
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# [
.loops4:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $2, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $3, %edx
movb %dl, (%rax)
# <
movq i(%rip), %rax
subq $2, %rax
movq %rax, i(%rip)
# [
.loops4_1:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_1
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# [
.loops4_1_1:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_1_1
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $2, %rax
movq %rax, i(%rip)
# ]
jmp .loops4_1_1
.loope4_1_1:
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# [
.loops4_1_2:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_1_2
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# [
.loops4_1_2_1:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_1_2_1
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# ]
jmp .loops4_1_2_1
.loope4_1_2_1:
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $2, %rax
movq %rax, i(%rip)
# ]
jmp .loops4_1_2
.loope4_1_2:
# <
movq i(%rip), %rax
subq $6, %rax
movq %rax, i(%rip)
# ]
jmp .loops4_1
.loope4_1:
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# [
.loops4_2:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_2
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# ]
jmp .loops4_2
.loope4_2:
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# >
movq i(%rip), %rax
addq $2, %rax
movq %rax, i(%rip)
# [
.loops4_3:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_3
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_3
.loope4_3:
# >
movq i(%rip), %rax
addq $2, %rax
movq %rax, i(%rip)
# [
.loops4_4:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_4
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_4
.loope4_4:
# <
movq i(%rip), %rax
subq $4, %rax
movq %rax, i(%rip)
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# [
.loops4_5:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_5
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_5
.loope4_5:
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# [
.loops4_6:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_6
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_6
.loope4_6:
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# [
.loops4_7:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_7
# <
movq i(%rip), %rax
subq $2, %rax
movq %rax, i(%rip)
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $2, %rax
movq %rax, i(%rip)
# [
.loops4_7_1:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_7_1
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_7_1
.loope4_7_1:
# ]
jmp .loops4_7
.loope4_7:
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# [
.loops4_8:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_8
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_8
.loope4_8:
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# [
.loops4_9:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_9
# >
movq i(%rip), %rax
addq $3, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $7, %edx
movb %dl, (%rax)
# [
.loops4_9_1:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_9_1
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $10, %edx
movb %dl, (%rax)
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_9_1
.loope4_9_1:
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# .
movq i(%rip), %rax
movzbl (%rax), %eax
movsbl %al, %eax
movl %eax, %edi
call putchar
# [
.loops4_9_2:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_9_2
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_9_2
.loope4_9_2:
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# [
.loops4_9_3:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_9_3
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_9_3
.loope4_9_3:
# >
movq i(%rip), %rax
addq $3, %rax
movq %rax, i(%rip)
# [
.loops4_9_4:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_9_4
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_9_4
.loope4_9_4:
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# <
movq i(%rip), %rax
subq $6, %rax
movq %rax, i(%rip)
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_9
.loope4_9:
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# >
movq i(%rip), %rax
addq $3, %rax
movq %rax, i(%rip)
# [
.loops4_10:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_10
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_10
.loope4_10:
# <
movq i(%rip), %rax
subq $3, %rax
movq %rax, i(%rip)
# >
movq i(%rip), %rax
addq $2, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $5, %edx
movb %dl, (%rax)
# <
movq i(%rip), %rax
subq $2, %rax
movq %rax, i(%rip)
# [
.loops4_11:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_11
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# [
.loops4_11_1:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_11_1
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $2, %rax
movq %rax, i(%rip)
# ]
jmp .loops4_11_1
.loope4_11_1:
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# [
.loops4_11_2:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_11_2
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# [
.loops4_11_2_1:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_11_2_1
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# ]
jmp .loops4_11_2_1
.loope4_11_2_1:
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $2, %rax
movq %rax, i(%rip)
# ]
jmp .loops4_11_2
.loope4_11_2:
# <
movq i(%rip), %rax
subq $6, %rax
movq %rax, i(%rip)
# ]
jmp .loops4_11
.loope4_11:
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# [
.loops4_12:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_12
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# ]
jmp .loops4_12
.loope4_12:
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# >
movq i(%rip), %rax
addq $2, %rax
movq %rax, i(%rip)
# [
.loops4_13:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_13
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_13
.loope4_13:
# >
movq i(%rip), %rax
addq $2, %rax
movq %rax, i(%rip)
# [
.loops4_14:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_14
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_14
.loope4_14:
# <
movq i(%rip), %rax
subq $4, %rax
movq %rax, i(%rip)
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# [
.loops4_15:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_15
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_15
.loope4_15:
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# [
.loops4_16:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_16
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_16
.loope4_16:
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# [
.loops4_17:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_17
# <
movq i(%rip), %rax
subq $2, %rax
movq %rax, i(%rip)
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $2, %rax
movq %rax, i(%rip)
# [
.loops4_17_1:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_17_1
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_17_1
.loope4_17_1:
# ]
jmp .loops4_17
.loope4_17:
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# [
.loops4_18:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_18
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_18
.loope4_18:
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# [
.loops4_19:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_19
# >
movq i(%rip), %rax
addq $3, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $6, %edx
movb %dl, (%rax)
# [
.loops4_19_1:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_19_1
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $11, %edx
movb %dl, (%rax)
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_19_1
.loope4_19_1:
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# .
movq i(%rip), %rax
movzbl (%rax), %eax
movsbl %al, %eax
movl %eax, %edi
call putchar
# [
.loops4_19_2:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_19_2
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_19_2
.loope4_19_2:
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# [
.loops4_19_3:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_19_3
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_19_3
.loope4_19_3:
# >
movq i(%rip), %rax
addq $3, %rax
movq %rax, i(%rip)
# [
.loops4_19_4:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_19_4
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_19_4
.loope4_19_4:
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# <
movq i(%rip), %rax
subq $6, %rax
movq %rax, i(%rip)
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_19
.loope4_19:
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# >
movq i(%rip), %rax
addq $3, %rax
movq %rax, i(%rip)
# [
.loops4_20:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_20
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_20
.loope4_20:
# <
movq i(%rip), %rax
subq $3, %rax
movq %rax, i(%rip)
# >
movq i(%rip), %rax
addq $5, %rax
movq %rax, i(%rip)
# [
.loops4_21:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_21
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_21
.loope4_21:
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# [
.loops4_22:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_22
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_22
.loope4_22:
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# [
.loops4_23:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_23
# <
movq i(%rip), %rax
subq $2, %rax
movq %rax, i(%rip)
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $2, %rax
movq %rax, i(%rip)
# [
.loops4_23_1:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_23_1
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_23_1
.loope4_23_1:
# ]
jmp .loops4_23
.loope4_23:
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# [
.loops4_24:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_24
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_24
.loope4_24:
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# [
.loops4_25:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_25
# >
movq i(%rip), %rax
addq $3, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $5, %edx
movb %dl, (%rax)
# [
.loops4_25_1:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_25_1
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $9, %edx
movb %dl, (%rax)
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_25_1
.loope4_25_1:
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $1, %edx
movb %dl, (%rax)
# .
movq i(%rip), %rax
movzbl (%rax), %eax
movsbl %al, %eax
movl %eax, %edi
call putchar
# [
.loops4_25_2:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_25_2
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_25_2
.loope4_25_2:
# <
movq i(%rip), %rax
subq $1, %rax
movq %rax, i(%rip)
# [
.loops4_25_3:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_25_3
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_25_3
.loope4_25_3:
# <
movq i(%rip), %rax
subq $3, %rax
movq %rax, i(%rip)
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_25
.loope4_25:
# <
movq i(%rip), %rax
subq $5, %rax
movq %rax, i(%rip)
# >
movq i(%rip), %rax
addq $7, %rax
movq %rax, i(%rip)
# [
.loops4_26:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_26
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_26
.loope4_26:
# <
movq i(%rip), %rax
subq $7, %rax
movq %rax, i(%rip)
# >
movq i(%rip), %rax
addq $1, %rax
movq %rax, i(%rip)
# +
movq i(%rip), %rax
movzbl (%rax), %edx
addl $10, %edx
movb %dl, (%rax)
# .
movq i(%rip), %rax
movzbl (%rax), %eax
movsbl %al, %eax
movl %eax, %edi
call putchar
# [
.loops4_27:
movq i(%rip), %rax
movzbl (%rax), %eax
cmpb $0, %al
je .loope4_27
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4_27
.loope4_27:
# <
movq i(%rip), %rax
subq $2, %rax
movq %rax, i(%rip)
# -
movq i(%rip), %rax
movzbl (%rax), %edx
subl $1, %edx
movb %dl, (%rax)
# ]
jmp .loops4
.loope4:
movl $0, %eax
popq %rbp
.cfi_def_cfa 7, 8
ret
.cfi_endproc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment