3 changed files with 82 additions and 0 deletions
			
			
		@ -0,0 +1,8 @@ | 
				
			|||
CFLAGS := -O3 -Wall -Wextra -std=c17 -D_GNU_SOURCE | 
				
			|||
 | 
				
			|||
.PHONY: all | 
				
			|||
all: main | 
				
			|||
 | 
				
			|||
.PHONY: clean | 
				
			|||
clean: | 
				
			|||
	rm -f main | 
				
			|||
@ -0,0 +1,61 @@ | 
				
			|||
#ip 3 | 
				
			|||
#reg0=1 | 
				
			|||
 | 
				
			|||
; fn main() | 
				
			|||
; &1 = ((&1 + 2) ** 2) * 19(&3) * 11 = ((&1 + 2) ** 2) * 209 | 
				
			|||
; &2 = ((&2 + 2) * 22(&3)) + 20 = &2 * 22 + 64 | 
				
			|||
; &1 = &1 + &2 | 
				
			|||
; if (&0 != 0) { | 
				
			|||
;     &2 = ((((27(&3) * 28(&3)) + 29(&3)) * 30(&3)) * 14) * 32(&3) = 10550400 | 
				
			|||
;     &1 = &1 + &2 | 
				
			|||
;     &0 = 0 | 
				
			|||
; } | 
				
			|||
; &5 = 1 | 
				
			|||
; do { | 
				
			|||
;     &4 = 1 | 
				
			|||
;     do { | 
				
			|||
;         if (&5 * &4 == &1) { | 
				
			|||
;             &0 = &0 + &5 | 
				
			|||
;         } | 
				
			|||
;         &4 = &4 + 1 | 
				
			|||
;     } while (&4 <= &1) | 
				
			|||
;     | 
				
			|||
;     &5 = &5 + 1 | 
				
			|||
; } while (&5 <= &1); | 
				
			|||
 | 
				
			|||
00: addi 3 16 3 | 
				
			|||
01: seti 1 9 5 | 
				
			|||
02: seti 1 1 4 | 
				
			|||
03: mulr 5 4 2 | 
				
			|||
04: eqrr 2 1 2 | 
				
			|||
05: addr 2 3 3 | 
				
			|||
06: addi 3 1 3 | 
				
			|||
07: addr 5 0 0 | 
				
			|||
08: addi 4 1 4 | 
				
			|||
09: gtrr 4 1 2 | 
				
			|||
10: addr 3 2 3 | 
				
			|||
11: seti 2 3 3 | 
				
			|||
12: addi 5 1 5 | 
				
			|||
13: gtrr 5 1 2 | 
				
			|||
14: addr 2 3 3 | 
				
			|||
15: seti 1 4 3 | 
				
			|||
16: mulr 3 3 3 | 
				
			|||
17: addi 1 2 1 | 
				
			|||
18: mulr 1 1 1 | 
				
			|||
19: mulr 3 1 1 | 
				
			|||
20: muli 1 11 1 | 
				
			|||
21: addi 2 2 2 | 
				
			|||
22: mulr 2 3 2 | 
				
			|||
23: addi 2 20 2 | 
				
			|||
24: addr 1 2 1 | 
				
			|||
25: addr 3 0 3 | 
				
			|||
26: seti 0 4 3 | 
				
			|||
27: setr 3 9 2 | 
				
			|||
28: mulr 2 3 2 | 
				
			|||
29: addr 3 2 2 | 
				
			|||
30: mulr 3 2 2 | 
				
			|||
31: muli 2 14 2 | 
				
			|||
32: mulr 2 3 2 | 
				
			|||
33: addr 1 2 1 | 
				
			|||
34: seti 0 6 0 | 
				
			|||
35: seti 0 0 3 | 
				
			|||
@ -0,0 +1,13 @@ | 
				
			|||
#include <stdio.h> | 
				
			|||
 | 
				
			|||
int main() | 
				
			|||
{ | 
				
			|||
    unsigned r0 = 0; | 
				
			|||
    unsigned r1 = 10551300; | 
				
			|||
    for (unsigned r5 = 1; r5 <= r1; r5++) { | 
				
			|||
        if (r1 % r5 == 0) { | 
				
			|||
            r0 = r0 + r5; | 
				
			|||
        } | 
				
			|||
    } | 
				
			|||
    printf("%d\n", r0); | 
				
			|||
} | 
				
			|||
					Loading…
					
					
				
		Reference in new issue