diff options
| author | 2025-08-21 22:42:14 +0330 | |
|---|---|---|
| committer | 2025-08-21 22:42:14 +0330 | |
| commit | bfc728476d8ac5edc6249ef2f9fa72ea11c7ffd7 (patch) | |
| tree | d07ed416cd612f72de0977bf9a1643c17e66a773 /pu2/pu2.out.c | |
| parent | added makefile (diff) | |
added jmp, jnz and jz
Diffstat (limited to 'pu2/pu2.out.c')
| -rw-r--r-- | pu2/pu2.out.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/pu2/pu2.out.c b/pu2/pu2.out.c index 347e6f4..f35a7ab 100644 --- a/pu2/pu2.out.c +++ b/pu2/pu2.out.c @@ -232,8 +232,8 @@ void __attribute__((hot, aligned(64))) pu2() { M += inst.v; goto PU2_START; CB_FIFTEEN: - // if (unlikely(inst.v == 7)) pc = m[ a ] >> 1; - if (unlikely(inst.v == a)) goto PU2_START; + //if (unlikely(inst.v == 7)) M = M2 + (m[a] >> 1); + //if (unlikely(inst.v == a)) goto PU2_START; m[ inst.v ] = m[ a ]; // asm("mov %1, %0" : "=r"(m[inst.v]) : "r"(m[a])); goto PU2_START; @@ -241,14 +241,14 @@ void __attribute__((hot, aligned(64))) pu2() { // asm("mov %1, %0" : "=r"(a) : "r"(m[inst.v])); a = m[ inst.v ]; goto PU2_START; - CB_SEVENTEEN: - // if (unlikely(a == 7)) pc = inst.v >> 1; + CB_SEVENTEEN: // beware, only instruction 17 (cb3) actually updates pc on an assignment to m[7]! + if (unlikely(a == 7)) M = M2 + (inst.v >> 1); // asm("mov %1, %0" : "=r"(m[a]) : "r"(inst.v)); m[ a ] = inst.v; goto PU2_START; CB_EIGHTEEN: - // if (unlikely(a == 7)) pc = m[ inst.v ] >> 1; - if (unlikely(inst.v == a)) goto PU2_START; + //if (unlikely(a == 7)) M = M2 + (m[inst.v] >> 1); + //if (unlikely(inst.v == a)) goto PU2_START; m[ a ] = m[ inst.v ]; // asm("mov %1, %0" : "=r"(m[a]) : "r"(m[inst.v])); goto PU2_START; |
