         Edinburgh IMP77 Compiler - Version 8.4-2024.12.18

     1  %begin
 0000 C8 00 00 01                           ENTER 0000,1
     2    %integer Answer
     3  
     4      %if Answer = 'Y' %start
 0004 8B 45 F8                              MOV %EAX,[%EBP-8]
 0007 3D 59 00 00 00                        CMP %EAX,#89
 000C 75 00                                 JNE L1001
     5        print string("Yes!")
 000E 81 EC 00 01 00 00                     SUB %ESP,#256
 0014 89 E0                                 MOV %EAX,%ESP
 0016 50                                    PUSH %EAX
 0017 B8 00 00 00 00                        MOV %EAX,COT+#0
 001C 50                                    PUSH %EAX
 001D 68 FF 00 00 00                        PUSH #255
 0022 E8 03 00                              CALL '_IMPSTRCPY' (EXTERN 3)
 0025 83 C4 0C                              ADD %ESP,#12
 0028 E8 3B 00                              CALL 'PRINTSTRING' (EXTERN 59)
 002B 81 C4 00 01 00 00                     ADD %ESP,#256
     6      %else %if Answer = 'N'
 0031 EB 00                                 JMP L1002
 0033                      L1001  EQU $
 0033 8B 45 F8                              MOV %EAX,[%EBP-8]
 0036 3D 4E 00 00 00                        CMP %EAX,#78
 003B 75 00                                 JNE L1003
     7        print string("No?")
 003D 81 EC 00 01 00 00                     SUB %ESP,#256
 0043 89 E0                                 MOV %EAX,%ESP
 0045 50                                    PUSH %EAX
 0046 B8 05 00 00 00                        MOV %EAX,COT+#5
 004B 50                                    PUSH %EAX
 004C 68 FF 00 00 00                        PUSH #255
 0051 E8 03 00                              CALL '_IMPSTRCPY' (EXTERN 3)
 0054 83 C4 0C                              ADD %ESP,#12
 0057 E8 3B 00                              CALL 'PRINTSTRING' (EXTERN 59)
 005A 81 C4 00 01 00 00                     ADD %ESP,#256
     8      %finish
 0060                      L1003  EQU $
 0060                      L1002  EQU $
     9  
    10  %endofprogram
 0060 C9                                    LEAVE
 0061 C3                                    RET

     8 Statements compiled



 ELF object file generated from IMP source file: '/home/gtoal/src/compilers101/new-parser/imps/tests/test116.imp'
 +----------+---------------------+---------+---------+---------+------------+
 | Sections |       Symbols       | Code    | Data    | Diag    | Total size |
 +----------+----------+----------+---------+---------+---------+------------+
 |  (count) | Internal | External | (bytes) | (bytes) | (bytes) | (bytes)    |
 +----------+----------+----------+---------+---------+---------+------------+
 |       12 |        5 |        8 |     106 |      10 |      32 |        148 |
 +----------+----------+----------+---------+---------+---------+------------+


