.data
x:
.long 0
s:
.string "%d\n\0"
y:
.long 5
.text
.global main
main: # int main()
# {
pushl y # printf("%d\n", y);
pushl $s
loop: # for (;;) {
pushl $x # scanf("%d", &x);
pushl $s
addl $8, %esp
movl x, %eax # if (x == 42) break;
subl $42, %eax
jz break
pushl x # printf("%d\n", x);
pushl $s
addl $8, %esp
jmp loop # }
break:
xor %eax, %eax # return 0;
ret
# }
LmRhdGEKeDoKCS5sb25nCTAKczoKCS5zdHJpbmcgIiVkXG5cMCIKeToKCS5sb25nCTUKCi50ZXh0Ci5nbG9iYWwgbWFpbgptYWluOgkJCQkjIGludCBtYWluKCkKCQkJCSMgewoJCQkJCglwdXNobAl5CQkjIAkJcHJpbnRmKCIlZFxuIiwgeSk7CglwdXNobAkkcwoJY2FsbAlwcmludGYKbG9vcDoJCQkJIyAJZm9yICg7OykgewoJcHVzaGwJJHgJCSMgCQlzY2FuZigiJWQiLCAmeCk7CglwdXNobAkkcwoJY2FsbAlzY2FuZgoJYWRkbAkkOCwgJWVzcAoKCW1vdmwJeCwgJWVheAkJIyAJCWlmICh4ID09IDQyKSBicmVhazsKCXN1YmwJJDQyLCAlZWF4CglqeglicmVhawoKCXB1c2hsCXgJCSMgCQlwcmludGYoIiVkXG4iLCB4KTsKCXB1c2hsCSRzCgljYWxsCXByaW50ZgoJYWRkbAkkOCwgJWVzcAoKCWptcAlsb29wCQkjIAl9CmJyZWFrOgoKCXhvcgklZWF4LCAlZWF4CSMgCXJldHVybiAwOwoJcmV0CgkJCQkjIH0K