         Edinburgh IMP77 Compiler - Version 8.4-2024.12.18

     1  %begin
 0000 C8 00 00 01                           ENTER 0000,1
     2    %integer i, i1 = 1, i2 = 2, i3 = 3
 0004 C7 45 F4 01 00 00 00                  MOV DWORD PTR [%EBP-12],#1
 000B C7 45 F0 02 00 00 00                  MOV DWORD PTR [%EBP-16],#2
 0012 C7 45 EC 03 00 00 00                  MOV DWORD PTR [%EBP-20],#3
     3    %if i2 = i3 %then %start
 0019 8B 45 F0                              MOV %EAX,[%EBP-16]
 001C 3B 45 EC                              CMP %EAX,[%EBP-20]
 001F 75 00                                 JNE L1001
     4        i = i1
 0021 8B 45 F4                              MOV %EAX,[%EBP-12]
 0024 89 45 F8                              MOV [%EBP-8],%EAX
     5    %finish %else %if i3 = i %start
 0027 EB 00                                 JMP L1002
 0029                      L1001  EQU $
 0029 8B 45 EC                              MOV %EAX,[%EBP-20]
 002C 3B 45 F8                              CMP %EAX,[%EBP-8]
 002F 75 00                                 JNE L1003
     6        i1 = i2; i2 = i
 0031 8B 45 F0                              MOV %EAX,[%EBP-16]
 0034 89 45 F4                              MOV [%EBP-12],%EAX
 0037 8B 45 F8                              MOV %EAX,[%EBP-8]
 003A 89 45 F0                              MOV [%EBP-16],%EAX
     7    %finish %else %start
 003D EB 00                                 JMP L1002
 003F                      L1003  EQU $
     8        i = i2
 003F 8B 45 F0                              MOV %EAX,[%EBP-16]
 0042 89 45 F8                              MOV [%EBP-8],%EAX
     9    %finish
 0045                      L1002  EQU $
    10  %endofprogram
 0045 C9                                    LEAVE
 0046 C3                                    RET

    11 Statements compiled



 ELF object file generated from IMP source file: '/home/gtoal/src/compilers101/new-parser/imps/tests/rebuild/test023.imp'
 +----------+---------------------+---------+---------+---------+------------+
 | Sections |       Symbols       | Code    | Data    | Diag    | Total size |
 +----------+----------+----------+---------+---------+---------+------------+
 |  (count) | Internal | External | (bytes) | (bytes) | (bytes) | (bytes)    |
 +----------+----------+----------+---------+---------+---------+------------+
 |       11 |        4 |        6 |      71 |       0 |      32 |        103 |
 +----------+----------+----------+---------+---------+---------+------------+


