=> Bootstrap dependency digest>=20010302: found digest-20190127 WARNING: [license.mk] Every package should define a LICENSE. ===> Skipping vulnerability checks. WARNING: No /var/db/pkg/pkg-vulnerabilities file found. WARNING: To fix run: `/usr/sbin/pkg_admin -K /var/db/pkg fetch-pkg-vulnerabilities'. ===> Building for pearpc-0.5 --- all --- /data/scratch/emulators/pearpc/work/.tools/bin/make all-recursive --- all-recursive --- Making all in doc Making all in src --- all-recursive --- Making all in cpu --- all-recursive --- Making all in cpu_jitc_x86_64 --- ppc_alu.o --- --- ppc_cpu.o --- --- ppc_dec.o --- --- ppc_esc.o --- --- ppc_exc.o --- --- ppc_fpu.o --- --- ppc_mmu.o --- --- ppc_opc.o --- --- ppc_alu.o --- clang++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -I/usr/pkg/include -I/usr/include -O2 -I/usr/pkg/include -I/usr/include -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -MT ppc_alu.o -MD -MP -MF .deps/ppc_alu.Tpo -c -o ppc_alu.o ppc_alu.cc --- ppc_cpu.o --- clang++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -I/usr/pkg/include -I/usr/include -O2 -I/usr/pkg/include -I/usr/include -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -MT ppc_cpu.o -MD -MP -MF .deps/ppc_cpu.Tpo -c -o ppc_cpu.o ppc_cpu.cc --- ppc_exc.o --- clang++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -I/usr/pkg/include -I/usr/include -O2 -I/usr/pkg/include -I/usr/include -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -MT ppc_exc.o -MD -MP -MF .deps/ppc_exc.Tpo -c -o ppc_exc.o ppc_exc.cc --- ppc_opc.o --- clang++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -I/usr/pkg/include -I/usr/include -O2 -I/usr/pkg/include -I/usr/include -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -MT ppc_opc.o -MD -MP -MF .deps/ppc_opc.Tpo -c -o ppc_opc.o ppc_opc.cc --- ppc_fpu.o --- clang++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -I/usr/pkg/include -I/usr/include -O2 -I/usr/pkg/include -I/usr/include -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -MT ppc_fpu.o -MD -MP -MF .deps/ppc_fpu.Tpo -c -o ppc_fpu.o ppc_fpu.cc --- ppc_mmu.o --- clang++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -I/usr/pkg/include -I/usr/include -O2 -I/usr/pkg/include -I/usr/include -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -MT ppc_mmu.o -MD -MP -MF .deps/ppc_mmu.Tpo -c -o ppc_mmu.o ppc_mmu.cc --- ppc_esc.o --- clang++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -I/usr/pkg/include -I/usr/include -O2 -I/usr/pkg/include -I/usr/include -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -MT ppc_esc.o -MD -MP -MF .deps/ppc_esc.Tpo -c -o ppc_esc.o ppc_esc.cc --- ppc_dec.o --- clang++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -I/usr/pkg/include -I/usr/include -O2 -I/usr/pkg/include -I/usr/include -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -MT ppc_dec.o -MD -MP -MF .deps/ppc_dec.Tpo -c -o ppc_dec.o ppc_dec.cc --- ppc_exc.o --- mv -f .deps/ppc_exc.Tpo .deps/ppc_exc.Po --- ppc_vec.o --- clang++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -I/usr/pkg/include -I/usr/include -O2 -I/usr/pkg/include -I/usr/include -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -MT ppc_vec.o -MD -MP -MF .deps/ppc_vec.Tpo -c -o ppc_vec.o ppc_vec.cc --- ppc_cpu.o --- mv -f .deps/ppc_cpu.Tpo .deps/ppc_cpu.Po --- jitc.o --- clang++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -I/usr/pkg/include -I/usr/include -O2 -I/usr/pkg/include -I/usr/include -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -MT jitc.o -MD -MP -MF .deps/jitc.Tpo -c -o jitc.o jitc.cc --- ppc_vec.o --- mv -f .deps/ppc_vec.Tpo .deps/ppc_vec.Po --- jitc_debug.o --- clang++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -I/usr/pkg/include -I/usr/include -O2 -I/usr/pkg/include -I/usr/include -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -MT jitc_debug.o -MD -MP -MF .deps/jitc_debug.Tpo -c -o jitc_debug.o jitc_debug.cc --- ppc_esc.o --- mv -f .deps/ppc_esc.Tpo .deps/ppc_esc.Po --- jitc_mmu.o --- clang -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -I/usr/pkg/include -I/usr/include -MT jitc_mmu.o -MD -MP -MF .deps/jitc_mmu.Tpo -c -o jitc_mmu.o jitc_mmu.S --- jitc_debug.o --- mv -f .deps/jitc_debug.Tpo .deps/jitc_debug.Po --- jitc_tools.o --- clang -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -I/usr/pkg/include -I/usr/include -MT jitc_tools.o -MD -MP -MF .deps/jitc_tools.Tpo -c -o jitc_tools.o jitc_tools.S --- jitc_mmu.o --- jitc_mmu.S:280:17: warning: '/*' within block comment [-Wcomment] /* add %rsp, 8; /* hash1, no longer needed */ \ ^ 1 warning generated. jitc_mmu.S:36:1: error: '.intel_syntax prefix' is not supported: registers must not have a '%' prefix in .intel_syntax .intel_syntax prefix ^ ./jitc_common.h:3:1: error: unknown directive .struct 0 #PPC_CPU_State ^ ./jitc_common.h:4:8: error: unknown directive jitc:;.struct jitc+8 ^ ./jitc_common.h:5:7: error: unknown directive gpr:;.struct gpr+32*4 ^ ./jitc_common.h:6:7: error: unknown directive fpr:;.struct fpr+32*8 ^ ./jitc_common.h:7:6: error: unknown directive cr:;.struct cr+4 ^ ./jitc_common.h:8:9: error: unknown directive fpscr:;.struct fpscr+4 ^ ./jitc_common.h:9:7: error: unknown directive xer:;.struct xer+4 ^ ./jitc_common.h:10:10: error: unknown directive xer_ca:;.struct xer_ca+4 ^ ./jitc_common.h:11:9: error: unknown directive ltreg:;.struct ltreg+4 ^ ./jitc_common.h:12:7: error: unknown directive ctr:;.struct ctr+4 ^ ./jitc_common.h:14:7: error: unknown directive msr:;.struct msr+4 ^ ./jitc_common.h:15:7: error: unknown directive pvr:;.struct pvr+4 ^ ./jitc_common.h:17:9: error: unknown directive ibatu:;.struct ibatu+4*4 ^ ./jitc_common.h:18:9: error: unknown directive ibatl:;.struct ibatl+4*4 ^ ./jitc_common.h:19:11: error: unknown directive ibat_bl:;.struct ibat_bl+4*4 ^ ./jitc_common.h:20:12: error: unknown directive ibat_nbl:;.struct ibat_nbl+4*4 ^ ./jitc_common.h:21:13: error: unknown directive ibat_bepi:;.struct ibat_bepi+4*4 ^ ./jitc_common.h:22:13: error: unknown directive ibat_brpn:;.struct ibat_brpn+4*4 ^ ./jitc_common.h:24:9: error: unknown directive dbatu:;.struct dbatu+4*4 ^ ./jitc_common.h:25:9: error: unknown directive dbatl:;.struct dbatl+4*4 ^ ./jitc_common.h:26:11: error: unknown directive dbat_bl:;.struct dbat_bl+4*4 ^ ./jitc_common.h:27:12: error: unknown directive dbat_nbl:;.struct dbat_nbl+4*4 ^ ./jitc_common.h:28:13: error: unknown directive dbat_bepi:;.struct dbat_bepi+4*4 ^ ./jitc_common.h:29:13: error: unknown directive dbat_brpn:;.struct dbat_brpn+4*4 ^ ./jitc_common.h:31:8: error: unknown directive sdr1:;.struct sdr1+4 ^ ./jitc_common.h:33:6: error: unknown directive sr:;.struct sr+16*4 ^ ./jitc_common.h:35:7: error: unknown directive dar:;.struct dar+4 ^ ./jitc_common.h:36:9: error: unknown directive dsisr:;.struct dsisr+4 ^ ./jitc_common.h:37:8: error: unknown directive sprg:;.struct sprg+4*4 ^ ./jitc_common.h:38:8: error: unknown directive srr0:;.struct srr0+4 ^ ./jitc_common.h:39:8: error: unknown directive srr1:;.struct srr1+4 ^ ./jitc_common.h:41:8: error: unknown directive decr:;.struct decr+4 ^ ./jitc_common.h:42:7: error: unknown directive ear:;.struct ear+4 ^ ./jitc_common.h:43:7: error: unknown directive pir:;.struct pir+4 ^ ./jitc_common.h:44:6: error: unknown directive tb:;.struct tb+8 ^ ./jitc_common.h:46:7: error: unknown directive hid:;.struct hid+16*4 ^ ./jitc_common.h:48:6: error: unknown directive pc:;.struct pc+4 ^ ./jitc_common.h:49:7: error: unknown directive npc:;.struct npc+4 ^ ./jitc_common.h:50:15: error: unknown directive current_opc:;.struct current_opc+4 ^ ./jitc_common.h:52:21: error: unknown directive exception_pending:;.struct exception_pending+1 ^ ./jitc_common.h:53:17: error: unknown directive dec_exception:;.struct dec_exception+1 ^ ./jitc_common.h:54:17: error: unknown directive ext_exception:;.struct ext_exception+1 ^ ./jitc_common.h:55:18: error: unknown directive stop_exception:;.struct stop_exception+1 ^ ./jitc_common.h:56:21: error: unknown directive singlestep_ignore:;.struct singlestep_ignore+1 ^ ./jitc_common.h:57:10: error: unknown directive align1:;.struct align1+1 ^ ./jitc_common.h:58:10: error: unknown directive align2:;.struct align2+1 ^ ./jitc_common.h:59:10: error: unknown directive align3:;.struct align3+1 ^ ./jitc_common.h:61:18: error: unknown directive pagetable_base:;.struct pagetable_base+4 ^ ./jitc_common.h:62:22: error: unknown directive pagetable_hashmask:;.struct pagetable_hashmask+4 ^ ./jitc_common.h:63:11: error: unknown directive reserve:;.struct reserve+4 ^ ./jitc_common.h:64:20: error: unknown directive have_reservation:;.struct have_reservation+4 ^ ./jitc_common.h:66:12: error: unknown directive tlb_last:;.struct tlb_last+4 ^ ./jitc_common.h:67:10: error: unknown directive tlb_pa:;.struct tlb_pa+4*4 ^ ./jitc_common.h:68:10: error: unknown directive tlb_va:;.struct tlb_va+4*4 ^ ./jitc_common.h:69:8: error: unknown directive pdec:;.struct pdec+8 ^ ./jitc_common.h:70:7: error: unknown directive ptb:;.struct ptb+8 ^ ./jitc_common.h:72:8: error: unknown directive temp:;.struct temp+4 ^ ./jitc_common.h:73:9: error: unknown directive temp2:;.struct temp2+4 ^ ./jitc_common.h:74:9: error: unknown directive x87cw:;.struct x87cw+4 ^ ./jitc_common.h:75:10: error: unknown directive pc_ofs:;.struct pc_ofs+4 ^ ./jitc_common.h:76:21: error: unknown directive current_code_base:;.struct current_code_base+4 ^ ./jitc_common.h:78:18: error: unknown directive tlb_code_0_eff:;.struct tlb_code_0_eff+32*4 ^ ./jitc_common.h:79:18: error: unknown directive tlb_data_0_eff:;.struct tlb_data_0_eff+32*4 ^ ./jitc_common.h:80:18: error: unknown directive tlb_data_8_eff:;.struct tlb_data_8_eff+32*4 ^ ./jitc_common.h:81:19: error: unknown directive tlb_code_0_phys:;.struct tlb_code_0_phys+32*4 ^ ./jitc_common.h:82:19: error: unknown directive tlb_data_0_phys:;.struct tlb_data_0_phys+32*4 ^ ./jitc_common.h:83:19: error: unknown directive tlb_data_8_phys:;.struct tlb_data_8_phys+32*4 ^ ./jitc_common.h:85:1: error: unknown directive .struct 0 #JITC ^ ./jitc_common.h:86:15: error: unknown directive clientPages:;.struct clientPages+8 ^ ./jitc_common.h:88:1: error: unknown directive .struct 0 #ClientPage ^ ./jitc_common.h:89:15: error: unknown directive entrypoints:;.struct entrypoints+1024*8 ^ ./jitc_common.h:90:15: error: unknown directive tcf_current:;.struct tcf_current+8 ^ ./jitc_common.h:91:15: error: unknown directive baseaddress:;.struct baseaddress+4 ^ ./jitc_common.h:92:13: error: unknown directive bytesLeft:;.struct bytesLeft+4 ^ ./jitc_common.h:93:7: error: unknown directive tcp:;.struct tcp+8 ^ ./jitc_common.h:94:10: error: unknown directive moreRU:;.struct moreRU+8 ^ ./jitc_common.h:95:10: error: unknown directive lessRU:;.struct lessRU+8 ^ jitc_mmu.S:105:6: error: unknown token in expression mov %r8, %rdi ^ jitc_mmu.S:106:5: error: unknown token in expression or %rax, -1 ^ jitc_mmu.S:107:6: error: unknown token in expression mov %ecx, 32*4*3 / 8 ^ jitc_mmu.S:108:6: error: unknown token in expression add %rdi, tlb_code_0_eff ^ jitc_mmu.S:110:6: error: unknown token in expression mov %rdi, %r8 ^ jitc_mmu.S:120:5: error: unknown token in expression or %ecx, -1 ^ jitc_mmu.S:121:6: error: unknown token in expression shr %eax, 12 ^ jitc_mmu.S:122:6: error: unknown token in expression and %eax, 32 -1 ^ jitc_mmu.S:123:7: error: unknown token in expression mov [%rdi+tlb_code_0_eff + %rax*4], %ecx ^ jitc_mmu.S:124:7: error: unknown token in expression mov [%rdi+tlb_data_0_eff + %rax*4], %ecx ^ jitc_mmu.S:125:7: error: unknown token in expression mov [%rdi+tlb_data_8_eff + %rax*4], %ecx ^ jitc_mmu.S:156:7: error: unknown token in expression push %rax ^ jitc_mmu.S:157:7: error: unknown token in expression push %rcx ^ jitc_mmu.S:158:7: error: unknown token in expression push %rsi ^ jitc_mmu.S:159:7: error: unknown token in expression push %rdi ^ jitc_mmu.S:160:7: error: unknown token in expression push %r8 ^ jitc_mmu.S:161:6: error: unknown token in expression mov %edi, %ebx ^ jitc_mmu.S:162:6: error: unknown token in expression sub %edi, 0x84000000 ^ jitc_mmu.S:164:6: error: unknown token in expression pop %r8 ^ jitc_mmu.S:165:6: error: unknown token in expression pop %rdi ^ jitc_mmu.S:166:6: error: unknown token in expression pop %rsi ^ jitc_mmu.S:167:6: error: unknown token in expression pop %rcx ^ jitc_mmu.S:168:6: error: unknown token in expression pop %rax ^ jitc_mmu.S:340:6: error: unknown token in expression pop %rdx # return address is no longer needed ^ jitc_mmu.S:341:6: error: unknown token in expression pop %rbx # bytes to roll back ^ jitc_mmu.S:342:6: error: unknown token in expression add %rsp, %rbx ^ jitc_mmu.S:343:6: error: unknown token in expression mov %ecx, (1<<27) # PPC_EXC_SRR1_PROT ^ jitc_mmu.S:347:6: error: unknown token in expression pop %rdx # return address is no longer needed ^ jitc_mmu.S:348:6: error: unknown token in expression pop %rbx # bytes to roll back ^ jitc_mmu.S:349:6: error: unknown token in expression add %rsp, %rbx ^ jitc_mmu.S:350:6: error: unknown token in expression mov %ecx, (1<<27) # PPC_EXC_DSISR_PROT ^ jitc_mmu.S:354:6: error: unknown token in expression pop %rdx # return address is no longer needed ^ jitc_mmu.S:355:6: error: unknown token in expression pop %rbx # bytes to roll back ^ jitc_mmu.S:356:6: error: unknown token in expression add %rsp, %rbx ^ jitc_mmu.S:357:6: error: unknown token in expression mov %ecx, (1<<27) | (1<<25) # PPC_EXC_DSISR_PROT | PPC_EXC_DSISR_STORE ^ jitc_mmu.S:383:6: error: unknown token in expression mov %edx, %eax ^ jitc_mmu.S:384:6: error: unknown token in expression mov %ecx, %eax ^ jitc_mmu.S:385:6: error: unknown token in expression shr %edx, 12 ^ jitc_mmu.S:386:6: error: unknown token in expression and %ecx, 0xfffff000 ^ jitc_mmu.S:387:6: error: unknown token in expression and %edx, 32 -1 ^ jitc_mmu.S:388:7: error: unknown token in expression mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx ^ jitc_mmu.S:389:17: error: unknown token in expression mov dword ptr [%rdi+tlb_code_0_phys + %rdx*4], 0 ^ jitc_mmu.S:401:6: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_code_0_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_code_0_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:401:22: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_code_0_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_code_0_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:401:38: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_code_0_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_code_0_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:401:52: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_code_0_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_code_0_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:401:74: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_code_0_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_code_0_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:401:91: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_code_0_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_code_0_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:401:141: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_code_0_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_code_0_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:403:17: error: unknown token in expression test byte ptr [%rdi+msr], (1<<5) # MSR_IR ^ jitc_mmu.S:406:6: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:38: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:72: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:88: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:122: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:141: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:155: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:171: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:208: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:224: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:240: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:262: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:294: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:328: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:342: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:358: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:374: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:391: error: expected absolute expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:407: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:439: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:472: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:489: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:531: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:573: error: expected absolute expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:589: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:625: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:655: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:684: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:706: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:6: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:38: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:72: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:88: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:122: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:141: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:155: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:171: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:208: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:224: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:240: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:262: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:294: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:328: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:342: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:358: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:374: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:391: error: expected absolute expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:407: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:439: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:472: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:489: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:531: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:573: error: expected absolute expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:589: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:625: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:655: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:684: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:706: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:6: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:38: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:72: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:88: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:122: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:141: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:155: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:171: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:208: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:224: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:240: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:262: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:294: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:328: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:342: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:358: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:374: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:391: error: expected absolute expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:407: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:439: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:472: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:489: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:531: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:573: error: expected absolute expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:589: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:625: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:655: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:684: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:706: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:6: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:38: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:72: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:88: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:122: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:141: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:155: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:171: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:208: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:224: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:240: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:262: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:294: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:328: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:342: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:358: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:374: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:391: error: expected absolute expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:407: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:439: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:472: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:489: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:531: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:573: error: expected absolute expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:589: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:625: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:655: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:684: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:706: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:411:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:412:6: error: unknown token in expression shr %ebx, 28 # SR ^ jitc_mmu.S:413:6: error: unknown token in expression mov %edx, [%rdi+sr+4*%rbx] ^ jitc_mmu.S:417:7: error: unknown token in expression test %edx, (1<<28) # SR_N ^ jitc_mmu.S:420:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:421:6: error: unknown token in expression mov %r12d, %edx ^ jitc_mmu.S:422:6: error: unknown token in expression shr %ebx, 12 ^ jitc_mmu.S:423:6: error: unknown token in expression mov %r8d, %eax ^ jitc_mmu.S:424:6: error: unknown token in expression and %ebx, 0xffff ^ jitc_mmu.S:425:6: error: unknown token in expression shr %r8d, 22 ^ jitc_mmu.S:426:6: error: unknown token in expression and %r12d, 0xffffff ^ jitc_mmu.S:427:6: error: unknown token in expression and %r8d, 0x3f ^ jitc_mmu.S:435:6: error: unknown token in expression xor %ebx, %r12d ^ jitc_mmu.S:439:7: error: unknown token in expression push %rax ^ jitc_mmu.S:440:7: error: unknown token in expression push %rbx # das brauch ich ^ jitc_mmu.S:442:6: error: unknown token in expression and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:443:6: error: unknown token in expression shl %ebx, 6 ^ jitc_mmu.S:444:5: error: unknown token in expression or %ebx, [%rdi+pagetable_base] ^ jitc_mmu.S:448:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:58: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:68: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:84: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:112: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:145: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:161: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:174: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:194: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:219: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:235: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:259: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:280: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:315: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:337: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:361: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:381: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:390: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:406: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:424: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:435: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:450: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:466: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:518: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:549: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:567: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:606: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:631: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:692: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:702: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:724: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:745: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:767: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:783: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:799: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:813: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:835: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:852: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:868: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:884: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:900: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:932: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:966: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:1008: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:1050: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:1078: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:1097: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:1127: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:1180: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:1206: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:448:1239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:58: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:68: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:84: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:112: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:145: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:161: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:174: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:194: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:219: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:235: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:259: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:280: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:315: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:337: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:361: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:381: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:390: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:406: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:424: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:435: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:450: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:466: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:518: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:549: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:567: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:606: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:631: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:692: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:702: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:724: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:745: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:767: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:783: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:799: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:813: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:835: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:852: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:868: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:884: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:900: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:932: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:966: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:1008: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:1050: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:449:1078: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: --- jitc_tools.o --- jitc_tools.S:37:1: error: '.intel_syntax prefix' is not supported: registers must not have a '%' prefix in .intel_syntax --- jitc_mmu.o --- ^ --- jitc_tools.o --- .intel_syntax prefix ^ --- jitc_mmu.o --- jitc_mmu.S:449:1097: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_p--- jitc_tools.o --- ./jitc_common.h:3:1: error: unknown directive .struct 0 #PPC_CPU_State ^ --- jitc_mmu.o --- hys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: --- jitc_tools.o --- ./jitc_common.h:4:8: error: unknown directive jitc:;.struct jitc+8 ^ ./jitc_common.h:5:7: error: unknown directive gpr:;.struct gpr+32*4 ^ ./jitc_common.h:6:7: error: unknown directive fpr:;.struct fpr+32*8 ^ ./jitc_common.h:7:6: error: unknown directive cr:;.struct cr+4 ^ ./jitc_common.h:8:9: error: unknown directive fpscr:;.struct fpscr+4 ^ ./jitc_common.h:9:7: error: unknown directive xer:;.struct xer+4 ^ ./jitc_common.h:10:10: error: unknown directive xer_ca:;.struct xer_ca+4 ^ ./jitc_common.h:11:9: error: unknown directive ltreg:;.struct ltreg+4 ^ ./jitc_common.h:12:7: error: unknown directive ctr:;.struct ctr+4 ^ ./jitc_common.h:14:7: error: unknown directive msr:;.struct msr+4 ^ ./jitc_common.h:15:7: error: unknown directive pvr:;.struct pvr+4 ^ ./jitc_common.h:17:9: error: unknown directive ibatu:;.struct ibatu+4*4 ^ ./jitc_common.h:18:9: error: unknown directive ibatl:;.struct ibatl+4*4 ^ ./jitc_common.h:19:11: error: unknown directive ibat_bl:;.struct ibat_bl+4*4 ^ ./jitc_common.h:20:12: error: unknown directive ibat_nbl:;.struct ibat_nbl+4*4 ^ ./jitc_common.h:21:13: error: unknown directive ibat_bepi:;.struct ibat_bepi+4*4 ^ ./jitc_common.h:22:13: error: unknown directive ibat_brpn:;.struct ibat_brpn+4*4 ^ ./jitc_common.h:24:9: error: unknown directive dbatu:;.struct dbatu+4*4 ^ ./jitc_common.h:25:9: error: unknown directive dbatl:;.struct dbatl+4*4 ^ ./jitc_common.h:26:11: error: unknown directive dbat_bl:;.struct dbat_bl+4*4 ^ ./jitc_common.h:27:12: error: unknown directive dbat_nbl:;.struct dbat_nbl+4*4 ^ ./jitc_common.h:28:13: error: unknown directive dbat_bepi:;.struct dbat_bepi+4*4 ^ ./jitc_common.h:29:13: error: unknown directive dbat_brpn:;.struct dbat_brpn+4*4 ^ ./jitc_common.h:31:8: error: unknown directive sdr1:;.struct sdr1+4 ^ --- jitc_mmu.o --- --- jitc_tools.o --- ./jitc_common.h:33:6: error: unknown directive sr:;.struct sr+16*4 ^ ./jitc_common.h:35:7: error: unknown directive --- jitc_mmu.o --- ^ --- jitc_tools.o --- dar:;.struct dar+4 ^ ./jitc_common.h:36:9: error: unknown directive dsisr:;.struct dsisr+4 ^ --- jitc_mmu.o --- jitc_mmu.S:449:1127: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_p--- jitc_tools.o --- ./jitc_common.h:37:8: error: unknown directive sprg:;.struct sprg+4*4 ^ --- jitc_mmu.o --- hys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: --- jitc_tools.o --- ./jitc_common.h:38:8: error: unknown directive srr0:;.struct srr0+4 ^ ./jitc_common.h:39:8: error: unknown directive srr1:;.struct srr1+4 ^ ./jitc_common.h:41:8: error: unknown directive decr:;.struct decr+4 ^ ./jitc_common.h:42:7: error: unknown directive ear:;.struct ear+4 ^ ./jitc_common.h:43:7: error: unknown directive pir:;.struct pir+4 ^ ./jitc_common.h:44:6: error: unknown directive tb:;.struct tb+8 ^ ./jitc_common.h:46:7: error: unknown directive hid:;.struct hid+16*4 ^ ./jitc_common.h:48:6: error: unknown directive pc:;.struct pc+4 ^ ./jitc_common.h:49:7: error: unknown directive npc:;.struct npc+4 ^ ./jitc_common.h:50:15: error: unknown directive current_opc:;.struct current_opc+4 ^ ./jitc_common.h:52:21: error: unknown directive exception_pending:;.struct exception_pending+1 ^ ./jitc_common.h:53:17: error: unknown directive dec_exception:;.struct dec_exception+1 ^ ./jitc_common.h:54:17: error: unknown directive ext_exception:;.struct ext_exception+1 ^ ./jitc_common.h:55:18: error: unknown directive stop_exception:;.struct stop_exception+1 ^ ./jitc_common.h:56:21: error: unknown directive singlestep_ignore:;.struct singlestep_ignore+1 ^ ./jitc_common.h:57:10: error: unknown directive align1:;.struct align1+1 ^ ./jitc_common.h:58:10: error: unknown directive align2:;.struct align2+1 ^ ./jitc_common.h:59:10: error: unknown directive align3:;.struct align3+1 ^ ./jitc_common.h:61:18: error: unknown directive pagetable_base:;.struct pagetable_base+4 ^ ./jitc_common.h:62:22: error: unknown directive pagetable_hashmask:;.struct pagetable_hashmask+4 ^ ./jitc_common.h:63:11: error: unknown directive reserve:;.struct reserve+4 ^ ./jitc_common.h:64:20: error: unknown directive have_reservation:;.struct have_reservation+4 ^ ./jitc_common.h:66:12: error: unknown directive tlb_last:;.struct tlb_last+4 --- jitc_mmu.o --- --- jitc_tools.o --- ^ ./jitc_common.h:67:10: error: unknown directive tlb_pa:;.struct tlb_pa+4*4 ^ ./jitc_common.h:68:10: error: unknown directive tlb_va:;.struct tlb_va+4*4 ^ ./jitc_common.h:69:8: error: unknown directive pdec:;.struct pdec+8 --- jitc_mmu.o --- ^ --- jitc_tools.o --- ^ ./jitc_common.h:70:7: error: unknown directive ptb:;.struct ptb+8 ^ ./jitc_common.h:72:8: error: unknown directive temp:;.struct temp+4 ^ --- jitc_mmu.o --- jitc_mmu.S:449:1180: error: unknown token in expression --- jitc_tools.o --- ./jitc_common.h:73:9: error: unknown directive temp2:;.struct temp2+4 ^ --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_p--- jitc_tools.o --- ./jitc_common.h:74:9: error: unknown directive x87cw:;.struct x87cw+4 ^ --- jitc_mmu.o --- hys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: --- jitc_tools.o --- ./jitc_common.h:75:10: error: unknown directive pc_ofs:;.struct pc_ofs+4 ^ ./jitc_common.h:76:21: error: unknown directive current_code_base:;.struct current_code_base+4 ^ ./jitc_common.h:78:18: error: unknown directive tlb_code_0_eff:;.struct tlb_code_0_eff+32*4 ^ ./jitc_common.h:79:18: error: unknown directive tlb_data_0_eff:;.struct tlb_data_0_eff+32*4 ^ ./jitc_common.h:80:18: error: unknown directive tlb_data_8_eff:;.struct tlb_data_8_eff+32*4 ^ ./jitc_common.h:81:19: error: unknown directive tlb_code_0_phys:;.struct tlb_code_0_phys+32*4 ^ ./jitc_common.h:82:19: error: unknown directive tlb_data_0_phys:;.struct tlb_data_0_phys+32*4 ^ ./jitc_common.h:83:19: error: unknown directive tlb_data_8_phys:;.struct tlb_data_8_phys+32*4 ^ ./jitc_common.h:85:1: error: unknown directive .struct 0 #JITC ^ ./jitc_common.h:86:15: error: unknown directive clientPages:;.struct clientPages+8 ^ ./jitc_common.h:88:1: error: unknown directive .struct 0 #ClientPage ^ ./jitc_common.h:89:15: error: unknown directive entrypoints:;.struct entrypoints+1024*8 ^ ./jitc_common.h:90:15: error: unknown directive tcf_current:;.struct tcf_current+8 ^ ./jitc_common.h:91:15: error: unknown directive baseaddress:;.struct baseaddress+4 ^ ./jitc_common.h:92:13: error: unknown directive bytesLeft:;.struct bytesLeft+4 ^ ./jitc_common.h:93:7: error: unknown directive tcp:;.struct tcp+8 ^ ./jitc_common.h:94:10: error: unknown directive moreRU:;.struct moreRU+8 ^ ./jitc_common.h:95:10: error: unknown directive lessRU:;.struct lessRU+8 ^ jitc_tools.S:52:6: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ --- jitc_mmu.o --- ^ jitc_mmu.S:449:1206: error: unknown token in expression --- jitc_tools.o --- jitc_tools.S:55:16: error: unknown token in expression and byte ptr [%rdi+xer+3], ~(1<<5) ^ --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: --- jitc_tools.o --- jitc_tools.S:59:15: error: unknown token in expression or byte ptr [%rdi+xer+3], (1<<5) ^ jitc_tools.S:75:6: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ jitc_tools.S:81:16: error: unknown token in expression and byte ptr [%rdi+cr+3], 0x0f ^ jitc_tools.S:82:15: error: unknown token in expression or byte ptr [%rdi+cr+3], 1<<5 ^ jitc_tools.S:86:16: error: unknown token in expression and byte ptr [%rdi+cr+3], 0x0f ^ jitc_tools.S:87:15: error: unknown token in expression or byte ptr [%rdi+cr+3], 1<<6 ^ jitc_tools.S:91:16: error: unknown token in expression and byte ptr [%rdi+cr+3], 0x0f ^ jitc_tools.S:92:15: error: unknown token in expression or byte ptr [%rdi+cr+3], 1<<7 ^ jitc_tools.S:108:16: error: unknown token in expression and byte ptr [%rdi+cr+3], 0x0f ^ jitc_tools.S:109:15: error: unknown token in expression or byte ptr [%rdi+cr+3], 1<<5 ^ jitc_tools.S:113:16: error: unknown token in expression and byte ptr [%rdi+cr+3], 0x0f ^ jitc_tools.S:114:15: error: unknown token in expression or byte ptr [%rdi+cr+3], 1<<6 ^ jitc_tools.S:118:16: error: unknown token in expression and byte ptr [%rdi+cr+3], 0x0f ^ jitc_tools.S:119:15: error: unknown token in expression or byte ptr [%rdi+cr+3], 1<<7 ^ jitc_tools.S:135:16: error: unknown token in expression and byte ptr [%rdi+cr+3], 0x0f ^ jitc_tools.S:136:15: error: unknown token in expression or byte ptr [%rdi+cr+3], 1<<5 ^ jitc_tools.S:140:16: error: unknown token in expression and byte ptr [%rdi+cr+3], 0x0f --- jitc_mmu.o --- --- jitc_tools.o --- ^ jitc_tools.S:141:15: error: unknown token in expression or byte ptr [%rdi+cr+3], 1<<6 ^ jitc_tools.S:145:16: error: unknown token in expression and byte ptr [%rdi+cr+3], 0x0f ^ --- jitc_mmu.o --- ^ --- jitc_tools.o --- jitc_tools.S:146:15: error: unknown token in expression or byte ptr [%rdi+cr+3], 1<<7 ^ --- jitc_mmu.o --- jitc_mmu.S:449:1239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: --- jitc_tools.o --- jitc_tools.S:162:16: error: unknown token in expression and byte ptr [%rdi+cr+%rax], 0x0f ^ jitc_tools.S:163:15: error: unknown token in expression or byte ptr [%rdi+cr+%rax], 1<<5 ^ jitc_tools.S:167:16: error: unknown token in expression and byte ptr [%rdi+cr+%rax], 0x0f ^ jitc_tools.S:168:15: error: unknown token in expression or byte ptr [%rdi+cr+%rax], 1<<6 ^ jitc_tools.S:172:16: error: unknown token in expression and byte ptr [%rdi+cr+%rax], 0x0f ^ jitc_tools.S:173:15: error: unknown token in expression or byte ptr [%rdi+cr+%rax], 1<<7 ^ jitc_tools.S:189:16: error: unknown token in expression and byte ptr [%rdi+cr+%rax], 0x0f ^ jitc_tools.S:190:15: error: unknown token in expression or byte ptr [%rdi+cr+%rax], 1<<5 ^ jitc_tools.S:194:16: error: unknown token in expression and byte ptr [%rdi+cr+%rax], 0x0f ^ jitc_tools.S:195:15: error: unknown token in expression or byte ptr [%rdi+cr+%rax], 1<<6 ^ jitc_tools.S:199:16: error: unknown token in expression and byte ptr [%rdi+cr+%rax], 0x0f ^ jitc_tools.S:200:15: error: unknown token in expression or byte ptr [%rdi+cr+%rax], 1<<7 ^ jitc_tools.S:216:16: error: unknown token in expression and byte ptr [%rdi+cr+%rax], 0xf0 ^ jitc_tools.S:217:15: error: unknown token in expression or byte ptr [%rdi+cr+%rax], 1<<1 ^ jitc_tools.S:221:16: error: unknown token in expression and byte ptr [%rdi+cr+%rax], 0xf0 ^ jitc_tools.S:222:15: error: unknown token in expression or byte ptr [%rdi+cr+%rax], 1<<2 ^ jitc_tools.S:226:16: error: unknown token in expression and byte ptr [%rdi+cr+%rax], 0xf0 ^ jitc_tools.S:227:15: error: unknown token in expression or byte ptr [%rdi+cr+%rax], 1<<3 ^ jitc_tools.S:243:16: error: unknown token in expression and byte ptr [%rdi+cr+%rax], 0xf0 ^ jitc_tools.S:244:15: error: unknown token in expression or byte ptr [%rdi+cr+%rax], 1<<1 ^ jitc_tools.S:248:16: error: unknown token in expression and byte ptr [%rdi+cr+%rax], 0xf0 --- jitc_mmu.o --- --- jitc_tools.o --- ^ jitc_tools.S:249:15: error: unknown token in expression or byte ptr [%rdi+cr+%rax], 1<<2 ^ jitc_tools.S:253:16: error: unknown token in expression and byte ptr [%rdi+cr+%rax], 0xf0 ^ jitc_tools.S:254:15: error: unknown token in expression or byte ptr [%rdi+cr+%rax], 1<<3 ^ --- jitc_mmu.o --- ^ --- jitc_tools.o --- jitc_tools.S:273:6: error: unknown token in expression mov %ecx, [%rdi+msr] ^ jitc_tools.S:274:7: error: unknown token in expression test %eax, (1<<10) # MSR_SE ^ --- jitc_mmu.o --- jitc_mmu.S:450:6: error: unknown token in expression --- jitc_tools.o --- jitc_tools.S:276:7: error: unknown token in expression --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- test %eax, ~((1<<30)|(1<<27)|(1<<25)|(1<<18)|(1<<15)|(1<<14)|(1<<13)|(1<<12)|(1<<11)|(1<<10)|(1<<8)|(1<<5)|(1<<4)|(1<<1)) ^ --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- jitc_tools.S:278:7: error: unknown token in expression --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ --- jitc_tools.o --- test %eax, (1<<18) # MSR_POW ^ --- jitc_mmu.o --- jitc_mmu.S:450:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- jitc_tools.S:283:8: error: unknown token in expression mov [%rdi+msr], %eax ^ --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: --- jitc_tools.o --- jitc_tools.S:284:6: error: unknown token in expression xor %eax, %ecx ^ --- jitc_mmu.o --- ^ --- jitc_tools.o --- jitc_tools.S:289:7: error: unknown token in expression test %eax, (1<<14) | (1<<4) | (1<<5) ^ --- jitc_mmu.o --- jitc_mmu.S:450:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: --- jitc_tools.o --- jitc_tools.S:295:6: error: unknown token in expression mov %ebx, %eax ^ jitc_tools.S:296:6: error: unknown token in expression mov %r12, %rdi ^ jitc_tools.S:298:6: error: unknown token in expression --- jitc_mmu.o --- ^ --- jitc_tools.o --- mov %eax, %ebx ^ jitc_tools.S:299:6: error: unknown token in expression mov %rdi, %r12 ^ --- jitc_mmu.o --- jitc_mmu.S:450:113: error: unknown token in expression --- jitc_tools.o --- jitc_tools.S:300:6: error: unknown token in expression mov %ecx, [%rdi+msr] ^ --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- jitc_tools.S:301:6: error: unknown token in expression and %eax, ~(1<<18) ^ --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: --- jitc_tools.o --- jitc_tools.S:305:6: error: unknown token in expression mov %rdi, singlestep_error ^ jitc_tools.S:309:6: error: unknown token in expression mov %edi, %eax --- jitc_mmu.o --- ^ --- jitc_tools.o --- ^ --- jitc_mmu.o --- jitc_mmu.S:450:146: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: --- jitc_tools.o --- :1:20: error: unknown token in expression lock or dword ptr [%rdi+exception_pending], 0x00000101 ^ jitc_tools.S:364:2: note: while in macro instantiation ppc_atomic_raise_dec_exception_macro ^ :1:20: error: unknown token in expression lock or dword ptr [%rdi+exception_pending], 0x00010001 ^ --- jitc_mmu.o --- ^ jitc_mmu.S:450:162: error: unknown token in expression --- jitc_tools.o --- jitc_tools.S:373:2: note: while in macro instantiation ppc_atomic_raise_ext_exception_macro ^ --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:175: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:195: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- jitc_tools.S:382:21: error: unknown token in expression lock or dword ptr [%rdi+exception_pending], 0x01000001 --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: --- jitc_tools.o --- ^ :1:5: error: unknown token in expression mov %eax, [%rdi+exception_pending] ^ jitc_tools.S:391:2: note: while in macro instantiation --- jitc_mmu.o --- ^ --- jitc_tools.o --- ppc_atomic_cancel_ext_exception_macro ^ :3:7: error: unknown token in expression test %eax, 0x00000100 # dec_exception ^ --- jitc_mmu.o --- jitc_mmu.S:450:220: error: unknown token in expression --- jitc_tools.o --- jitc_tools.S:391:2: note: while in macro instantiation --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- ppc_atomic_cancel_ext_exception_macro ^ --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: --- jitc_tools.o --- :4:6: error: unknown token in expression mov %ecx, %eax ^ jitc_tools.S:391:2: note: while in macro instantiation ppc_atomic_cancel_ext_exception_macro ^ :5:8: error: unknown token in expression setnz %cl ^ jitc_tools.S:391:2: note: while in macro instantiation ppc_atomic_cancel_ext_exception_macro ^ :6:6: error: unknown token in expression and %ecx, 0x00000101 ^ jitc_tools.S:391:2: note: while in macro instantiation ppc_atomic_cancel_ext_exception_macro ^ :7:26: error: unknown token in expression lock cmpxchg dword ptr [%rdi+exception_pending], %ecx ^ --- jitc_mmu.o --- ^ --- jitc_tools.o --- jitc_tools.S:391:2: note: while in macro instantiation ppc_atomic_cancel_ext_exception_macro ^ --- jitc_mmu.o --- jitc_mmu.S:450:236: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- jitc_tools.S:399:6: error: unknown token in expression mov %ebx, %eax ^ jitc_tools.S:400:6: error: unknown token in expression shr %eax, 12 ^ jitc_tools.S:401:6: error: unknown token in expression mov %eax, [%ecx+%eax*4] ^ jitc_tools.S:402:7: error: unknown token in expression test %eax, %eax ^ jitc_tools.S:405:6: error: unknown token in expression mov %eax, %ebx ^ jitc_tools.S:406:6: error: unknown token in expression and %eax, 0xfffff000 ^ jitc_tools.S:411:17: error: unknown token in expression cmp dword ptr [%eax+tcf_current], 0 ^ jitc_tools.S:413:6: error: unknown token in expression mov %ecx, %ebx ^ --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:260: error: unknown token in expression --- jitc_tools.o --- jitc_tools.S:414:6: error: unknown token in expression mov %esi, %eax --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- ^ --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: --- jitc_tools.o --- jitc_tools.S:415:6: error: unknown token in expression and %ecx, 0x00000ffc ^ jitc_tools.S:416:6: error: unknown token in expression mov %eax, [%eax + entrypoints + %ecx] ^ jitc_tools.S:417:7: error: unknown token in expression test %eax, %eax ^ jitc_tools.S:422:6: error: unknown token in expression mov %eax, %esi ^ --- jitc_mmu.o --- ^ jitc_mmu.S:450:281: error: unknown token in expression --- jitc_tools.o --- jitc_tools.S:423:6: error: unknown token in expression mov %edx, %ebx ^ jitc_tools.S:424:6: error: unknown token in expression and %edx, 0xfffff000 ^ jitc_tools.S:428:6: error: unknown token in expression mov %edx, %ebx ^ jitc_tools.S:429:6: error: unknown token in expression mov %ecx, %ebx ^ jitc_tools.S:430:6: error: unknown token in expression and %edx, 0xfffff000 ^ jitc_tools.S:431:6: error: unknown token in expression and %ecx, 0x00000fff ^ jitc_tools.S:469:7: error: unknown token in expression mov [%rdi+dar], %eax ^ jitc_tools.S:470:7: error: unknown token in expression mov [%rdi+dsisr], %ecx ^ jitc_tools.S:473:6: error: unknown token in expression mov %edx, [%rdi+pc_ofs] ^ jitc_tools.S:474:6: error: unknown token in expression mov %eax, [%rdi+msr] ^ jitc_tools.S:475:6: error: unknown token in expression add %edx, [%rdi+current_code_base] ^ jitc_tools.S:478:6: error: unknown token in expression and %eax, 0x87c0ffff ^ --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- jitc_tools.S:479:7: error: unknown token in expression mov [%rdi+srr1], %eax ^ jitc_tools.S:480:7: error: unknown token in expression mov [%rdi+srr0], %edx ^ :1:5: error: unknown token in expression xor %eax, %eax ^ jitc_tools.S:481:2: note: while in macro instantiation exception_epilogue 0x300 ^ :2:7: error: unknown token in expression mov [%rdi+msr], %eax ^ jitc_tools.S:481:2: note: while in macro instantiation exception_epilogue 0x300 ^ :3:7: error: unknown token in expression mov [%rdi+current_code_base], %eax ^ jitc_tools.S:481:2: note: while in macro instantiation exception_epilogue 0x300 ^ :5:6: error: unknown token in expression mov %rdi, [%rdi+jitc] ^ jitc_tools.S:481:2: note: while in macro instantiation exception_epilogue 0x300 ^ :6:6: error: unknown token in expression mov %esi, 0x300 ^ jitc_tools.S:481:2: note: while in macro instantiation exception_epilogue 0x300 ^ --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:317: error: unknown token in expression --- jitc_tools.o --- :3:6: error: unknown token in expression jmp %rax ^ :7:2: note: while in macro instantiation ppc_new_pc_intern ^ jitc_tools.S:481:2: note: while in macro instantiation exception_epilogue 0x300 ^ jitc_tools.S:494:7: error: unknown token in expression mov [%rdi+srr0], %eax ^ jitc_tools.S:495:6: error: unknown token in expression mov %eax, [%rdi+msr] ^ jitc_tools.S:496:6: error: unknown token in expression and %eax, 0x87c0ffff ^ jitc_tools.S:497:5: error: unknown token in expression or %eax, %ecx ^ jitc_tools.S:498:7: error: unknown token in expression mov [%rdi+srr1], %eax ^ :1:5: error: unknown token in expression xor %eax, %eax ^ jitc_tools.S:499:2: note: while in macro instantiation exception_epilogue 0x400 ^ :2:7: error: unknown token in expression mov [%rdi+msr], %eax ^ jitc_tools.S:499:2: note: while in macro instantiation exception_epilogue 0x400 ^ --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- :3:7: error: unknown token in expression mov [%rdi+current_code_base], %eax ^ jitc_tools.S:499:2: note: while in macro instantiation exception_epilogue 0x400 ^ :5:6: error: unknown token in expression mov %rdi, [%rdi+jitc] ^ jitc_tools.S:499:2: note: while in macro instantiation exception_epilogue 0x400 ^ :6:6: error: unknown token in expression mov %esi, 0x400 ^ jitc_tools.S:499:2: note: while in macro instantiation exception_epilogue 0x400 ^ :3:6: error: unknown token in expression jmp %rax ^ :7:2: note: while in macro instantiation ppc_new_pc_intern ^ jitc_tools.S:499:2: note: while in macro instantiation exception_epilogue 0x400 ^ jitc_tools.S:511:7: error: unknown token in expression mov [%rdi+srr0], %eax ^ jitc_tools.S:512:6: error: unknown token in expression mov %edx, [%rdi+msr] ^ jitc_tools.S:514:6: error: unknown token in expression and %edx, 0x87c0ffff ^ --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:339: error: unknown token in expression --- jitc_tools.o --- jitc_tools.S:515:7: error: unknown token in expression mov [%rdi+srr1], %edx ^ :1:5: error: unknown token in expression xor %eax, %eax ^ jitc_tools.S:516:2: note: while in macro instantiation exception_epilogue 0x500 ^ :2:7: error: unknown token in expression mov [%rdi+msr], %eax ^ jitc_tools.S:516:2: note: while in macro instantiation exception_epilogue 0x500 ^ :3:7: error: unknown token in expression mov [%rdi+current_code_base], %eax ^ jitc_tools.S:516:2: note: while in macro instantiation exception_epilogue 0x500 ^ :5:6: error: unknown token in expression mov %rdi, [%rdi+jitc] ^ jitc_tools.S:516:2: note: while in macro instantiation exception_epilogue 0x500 ^ :6:6: error: unknown token in expression mov %esi, 0x500 ^ jitc_tools.S:516:2: note: while in macro instantiation exception_epilogue 0x500 ^ :3:6: error: unknown token in expression jmp %rax ^ --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- :7:2: note: while in macro instantiation ppc_new_pc_intern ^ jitc_tools.S:516:2: note: while in macro instantiation exception_epilogue 0x500 ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*0)] ^ jitc_tools.S:528:2: note: while in macro instantiation getCurCPU 0 ^ jitc_tools.S:536:7: error: unknown token in expression mov [%rdi+pc_ofs], %esi ^ jitc_tools.S:537:6: error: unknown token in expression mov %eax, [%rdi+msr] ^ jitc_tools.S:538:6: error: unknown token in expression mov %edx, %esi ^ jitc_tools.S:539:6: error: unknown token in expression and %eax, 0x87c0ffff ^ jitc_tools.S:540:6: error: unknown token in expression add %edx, [%rdi+current_code_base] ^ jitc_tools.S:541:5: error: unknown token in expression or %eax, %ecx ^ jitc_tools.S:542:7: error: unknown token in expression mov [%rdi+srr0], %edx ^ jitc_tools.S:543:7: error: unknown token in expression mov [%rdi+srr1], %eax ^ --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:363: error: unknown token in expression --- jitc_tools.o --- :1:5: error: unknown token in expression xor %eax, %eax ^ jitc_tools.S:544:2: note: while in macro instantiation exception_epilogue 0x700 ^ :2:7: error: unknown token in expression mov [%rdi+msr], %eax ^ jitc_tools.S:544:2: note: while in macro instantiation exception_epilogue 0x700 ^ :3:7: error: unknown token in expression mov [%rdi+current_code_base], %eax ^ jitc_tools.S:544:2: note: while in macro instantiation exception_epilogue 0x700 ^ :5:6: error: unknown token in expression mov %rdi, [%rdi+jitc] ^ jitc_tools.S:544:2: note: while in macro instantiation exception_epilogue 0x700 ^ :6:6: error: unknown token in expression mov %esi, 0x700 ^ jitc_tools.S:544:2: note: while in macro instantiation exception_epilogue 0x700 ^ :3:6: error: unknown token in expression jmp %rax ^ :7:2: note: while in macro instantiation ppc_new_pc_intern ^ --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- jitc_tools.S:544:2: note: while in macro instantiation exception_epilogue 0x700 ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*0)] ^ jitc_tools.S:554:2: note: while in macro instantiation getCurCPU 0 ^ jitc_tools.S:556:6: error: unknown token in expression mov %edx, %esi ^ jitc_tools.S:557:7: error: unknown token in expression mov [%rdi+pc_ofs], %esi ^ jitc_tools.S:558:6: error: unknown token in expression mov %eax, [%rdi+msr] ^ jitc_tools.S:559:6: error: unknown token in expression add %edx, [%rdi+current_code_base] ^ jitc_tools.S:560:6: error: unknown token in expression and %eax, 0x87c0ffff ^ jitc_tools.S:561:7: error: unknown token in expression mov [%rdi+srr0], %edx ^ jitc_tools.S:562:7: error: unknown token in expression mov [%rdi+srr1], %eax ^ :1:5: error: unknown token in expression xor %eax, %eax ^ jitc_tools.S:563:2: note: while in macro instantiation exception_epilogue 0x800 ^ --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:383: error: unknown token in expression --- jitc_tools.o --- :2:7: error: unknown token in expression mov [%rdi+msr], %eax ^ jitc_tools.S:563:2: note: while in macro instantiation exception_epilogue 0x800 ^ :3:7: error: unknown token in expression mov [%rdi+current_code_base], %eax ^ jitc_tools.S:563:2: note: while in macro instantiation exception_epilogue 0x800 ^ :5:6: error: unknown token in expression mov %rdi, [%rdi+jitc] ^ jitc_tools.S:563:2: note: while in macro instantiation exception_epilogue 0x800 ^ :6:6: error: unknown token in expression mov %esi, 0x800 ^ jitc_tools.S:563:2: note: while in macro instantiation exception_epilogue 0x800 ^ :3:6: error: unknown token in expression jmp %rax ^ :7:2: note: while in macro instantiation ppc_new_pc_intern ^ jitc_tools.S:563:2: note: while in macro instantiation exception_epilogue 0x800 ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*0)] ^ --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- jitc_tools.S:573:2: note: while in macro instantiation getCurCPU 0 ^ jitc_tools.S:574:6: error: unknown token in expression mov %edx, %esi ^ jitc_tools.S:575:7: error: unknown token in expression mov [%rdi+pc_ofs], %esi ^ jitc_tools.S:576:6: error: unknown token in expression mov %eax, [%rdi+msr] ^ jitc_tools.S:577:6: error: unknown token in expression add %edx, [%rdi+current_code_base] ^ jitc_tools.S:578:6: error: unknown token in expression and %eax, 0x87c0ffff ^ jitc_tools.S:579:7: error: unknown token in expression mov [%rdi+srr0], %edx ^ jitc_tools.S:580:7: error: unknown token in expression mov [%rdi+srr1], %eax ^ :1:5: error: unknown token in expression xor %eax, %eax ^ jitc_tools.S:581:2: note: while in macro instantiation exception_epilogue 0xf20 ^ :2:7: error: unknown token in expression mov [%rdi+msr], %eax ^ jitc_tools.S:581:2: note: while in macro instantiation exception_epilogue 0xf20 ^ --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:392: error: unknown token in expression --- jitc_tools.o --- :3:7: error: unknown token in expression mov [%rdi+current_code_base], %eax ^ jitc_tools.S:581:2: note: while in macro instantiation exception_epilogue 0xf20 ^ :5:6: error: unknown token in expression mov %rdi, [%rdi+jitc] ^ jitc_tools.S:581:2: note: while in macro instantiation exception_epilogue 0xf20 ^ :6:6: error: unknown token in expression mov %esi, 0xf20 ^ jitc_tools.S:581:2: note: while in macro instantiation exception_epilogue 0xf20 ^ :3:6: error: unknown token in expression jmp %rax ^ :7:2: note: while in macro instantiation ppc_new_pc_intern ^ jitc_tools.S:581:2: note: while in macro instantiation exception_epilogue 0xf20 ^ jitc_tools.S:593:7: error: unknown token in expression mov [%rdi+srr0], %eax ^ jitc_tools.S:594:6: error: unknown token in expression mov %edx, [%rdi+msr] ^ :1:5: error: unknown token in expression mov %eax, [%rdi+exception_pending] ^ --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- jitc_tools.S:595:2: note: while in macro instantiation ppc_atomic_cancel_dec_exception_macro ^ :3:7: error: unknown token in expression test %eax, 0x00010000 # ext_exception ^ jitc_tools.S:595:2: note: while in macro instantiation ppc_atomic_cancel_dec_exception_macro ^ :4:6: error: unknown token in expression mov %ebx, %eax ^ jitc_tools.S:595:2: note: while in macro instantiation ppc_atomic_cancel_dec_exception_macro ^ :5:8: error: unknown token in expression setnz %bl ^ jitc_tools.S:595:2: note: while in macro instantiation ppc_atomic_cancel_dec_exception_macro ^ :6:6: error: unknown token in expression and %ebx, 0x00010001 ^ jitc_tools.S:595:2: note: while in macro instantiation ppc_atomic_cancel_dec_exception_macro ^ :7:26: error: unknown token in expression lock cmpxchg dword ptr [%rdi+exception_pending], %ebx ^ jitc_tools.S:595:2: note: while in macro instantiation --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:408: error: unknown token in expression --- jitc_tools.o --- ppc_atomic_cancel_dec_exception_macro ^ jitc_tools.S:596:6: error: unknown token in expression and %edx, 0x87c0ffff ^ jitc_tools.S:597:7: error: unknown token in expression mov [%rdi+srr1], %edx ^ :1:5: error: unknown token in expression xor %eax, %eax ^ jitc_tools.S:598:2: note: while in macro instantiation exception_epilogue 0x900 ^ :2:7: error: unknown token in expression mov [%rdi+msr], %eax ^ jitc_tools.S:598:2: note: while in macro instantiation exception_epilogue 0x900 ^ :3:7: error: unknown token in expression mov [%rdi+current_code_base], %eax ^ jitc_tools.S:598:2: note: while in macro instantiation exception_epilogue 0x900 ^ :5:6: error: unknown token in expression mov %rdi, [%rdi+jitc] ^ jitc_tools.S:598:2: note: while in macro instantiation exception_epilogue 0x900 ^ :6:6: error: unknown token in expression mov %esi, 0x900 ^ --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- jitc_tools.S:598:2: note: while in macro instantiation exception_epilogue 0x900 ^ :3:6: error: unknown token in expression jmp %rax ^ :7:2: note: while in macro instantiation ppc_new_pc_intern ^ jitc_tools.S:598:2: note: while in macro instantiation exception_epilogue 0x900 ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*0)] ^ jitc_tools.S:608:2: note: while in macro instantiation getCurCPU 0 ^ jitc_tools.S:609:6: error: unknown token in expression mov %edx, %esi ^ jitc_tools.S:610:7: error: unknown token in expression mov [%rdi+pc_ofs], %esi ^ jitc_tools.S:611:6: error: unknown token in expression mov %eax, [%rdi+msr] ^ jitc_tools.S:612:6: error: unknown token in expression add %edx, [%rdi+current_code_base] ^ jitc_tools.S:613:6: error: unknown token in expression and %eax, 0x87c0ffff ^ jitc_tools.S:614:7: error: unknown token in expression mov [%rdi+srr0], %edx ^ --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:426: error: unknown token in expression --- jitc_tools.o --- jitc_tools.S:615:7: error: unknown token in expression mov [%rdi+srr1], %eax ^ :1:5: error: unknown token in expression xor %eax, %eax ^ jitc_tools.S:616:2: note: while in macro instantiation exception_epilogue 0xc00 ^ :2:7: error: unknown token in expression mov [%rdi+msr], %eax ^ jitc_tools.S:616:2: note: while in macro instantiation exception_epilogue 0xc00 ^ :3:7: error: unknown token in expression mov [%rdi+current_code_base], %eax ^ jitc_tools.S:616:2: note: while in macro instantiation exception_epilogue 0xc00 ^ :5:6: error: unknown token in expression mov %rdi, [%rdi+jitc] ^ jitc_tools.S:616:2: note: while in macro instantiation exception_epilogue 0xc00 ^ :6:6: error: unknown token in expression mov %esi, 0xc00 ^ jitc_tools.S:616:2: note: while in macro instantiation exception_epilogue 0xc00 ^ :3:6: error: unknown token in expression jmp %rax ^ --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- :7:2: note: while in macro instantiation ppc_new_pc_intern ^ jitc_tools.S:616:2: note: while in macro instantiation exception_epilogue 0xc00 ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ jitc_tools.S:626:2: note: while in macro instantiation getCurCPU 1 ^ jitc_tools.S:628:17: error: unknown token in expression test byte ptr [%rdi+exception_pending], 1 ^ jitc_tools.S:633:17: error: unknown token in expression test byte ptr [%rdi+stop_exception], 1 ^ jitc_tools.S:635:17: error: unknown token in expression test byte ptr [%rdi+msr+1], 1<<7 # MSR_EE ^ jitc_tools.S:637:6: error: unknown token in expression add %rsp, 8 ^ jitc_tools.S:638:6: error: unknown token in expression add %eax, [%rdi+current_code_base] ^ jitc_tools.S:639:17: error: unknown token in expression test byte ptr [%rdi+ext_exception], 1 ^ jitc_tools.S:641:17: error: unknown token in expression --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:437: error: unknown token in expression --- jitc_tools.o --- test byte ptr [%rdi+dec_exception], 1 ^ jitc_tools.S:643:6: error: unknown token in expression mov %rdi, exception_error ^ jitc_tools.S:646:6: error: unknown token in expression add %rsp, 8 ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ jitc_tools.S:658:2: note: while in macro instantiation getCurCPU 1 ^ jitc_tools.S:660:6: error: unknown token in expression mov %edx, %eax ^ jitc_tools.S:661:6: error: unknown token in expression and %edx, 0xfffff000 ^ jitc_tools.S:662:17: error: unknown token in expression test byte ptr [%rdi+exception_pending], 1 ^ jitc_tools.S:663:7: error: unknown token in expression mov [%rdi+current_code_base], %edx ^ jitc_tools.S:668:17: error: unknown token in expression test byte ptr [%rdi+stop_exception], 1 ^ jitc_tools.S:670:17: error: unknown token in expression test byte ptr [%rdi+msr+1], 1<<7 # MSR_EE ^ --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- jitc_tools.S:672:6: error: unknown token in expression add %rsp, 8 ^ jitc_tools.S:673:17: error: unknown token in expression test byte ptr [%rdi+ext_exception], 1 ^ jitc_tools.S:675:17: error: unknown token in expression test byte ptr [%rdi+dec_exception], 1 ^ jitc_tools.S:677:6: error: unknown token in expression mov %rdi, exception_error ^ jitc_tools.S:680:6: error: unknown token in expression add %rsp, 8 ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*0)] ^ jitc_tools.S:696:2: note: while in macro instantiation getCurCPU 0 ^ jitc_tools.S:697:6: error: unknown token in expression add %eax, [%rdi+current_code_base] ^ jitc_tools.S:701:6: error: unknown token in expression mov %rdi, [%rdi+jitc] ^ jitc_tools.S:702:6: error: unknown token in expression mov %esi, %eax ^ :3:6: error: unknown token in expression jmp %rax ^ jitc_tools.S:703:2: note: while in macro instantiation --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:452: error: unknown token in expression --- jitc_tools.o --- ppc_new_pc_intern ^ jitc_tools.S:719:6: error: unknown token in expression mov %rdi, [%rdi+jitc] ^ jitc_tools.S:720:6: error: unknown token in expression mov %esi, %eax ^ --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- :3:6: error: unknown token in expression jmp %rax ^ jitc_tools.S:721:2: note: while in macro instantiation ppc_new_pc_intern ^ --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:468: error: unknown token in expression --- jitc_tools.o --- :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ jitc_tools.S:733:2: note: while in macro instantiation getCurCPU 1 ^ jitc_tools.S:734:6: error: unknown token in expression add %eax, [%rdi+current_code_base] ^ --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- jitc_tools.S:737:6: error: unknown token in expression mov %rdi, [%rdi+jitc] ^ jitc_tools.S:738:6: error: unknown token in expression mov %esi, %eax ^ --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: --- jitc_tools.o --- jitc_tools.S:772:6: error: unknown token in expression pop %rdi ^ jitc_tools.S:779:6: error: unknown token in expression mov %rdx, %rax ^ jitc_tools.S:780:6: error: unknown token in expression sub %rdi, 5 ^ jitc_tools.S:781:16: error: unknown token in expression mov byte ptr [%rdi-5], 0xe9 ^ jitc_tools.S:782:6: error: unknown token in expression sub %rax, %rdi ^ --- jitc_mmu.o --- ^ --- jitc_tools.o --- jitc_tools.S:787:17: error: unknown token in expression mov dword ptr [%rdi-4], %eax ^ jitc_tools.S:788:6: error: unknown token in expression jmp %rdx --- jitc_mmu.o --- jitc_mmu.S:450:520: error: unknown token in expression --- jitc_tools.o --- ^ jitc_tools.S:798:7: error: unknown token in expression push %rbx ^ jitc_tools.S:799:7: error: unknown token in expression push %rbp ^ --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- jitc_tools.S:800:7: error: unknown token in expression push %r12 ^ jitc_tools.S:801:7: error: unknown token in expression push %r13 ^ jitc_tools.S:802:7: error: unknown token in expression push %r14 ^ jitc_tools.S:803:7: error: unknown token in expression push %r15 --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: --- jitc_tools.o --- ^ jitc_tools.S:806:6: error: unknown token in expression mov %rax, [%rsi] ^ jitc_tools.S:807:6: error: unknown token in expression sub %rsp, %rdx ^ jitc_tools.S:808:6: error: unknown token in expression mov %rcx, %rsp ^ jitc_tools.S:809:7: error: unknown token in expression mov [%rsi], %rsp ^ jitc_tools.S:811:7: error: unknown token in expression push %rdx ^ jitc_tools.S:813:7: error: unknown token in expression mov %r8, [%rax] ^ jitc_tools.S:814:8: error: unknown token in expression mov [%rcx], %r8 ^ jitc_tools.S:815:7: error: unknown token in expression add %rax, 8 ^ jitc_tools.S:816:7: error: unknown token in expression --- jitc_mmu.o --- ^ --- jitc_tools.o --- add %rcx, 8 ^ jitc_tools.S:817:7: error: unknown token in expression sub %edx, 8 ^ --- jitc_mmu.o --- jitc_mmu.S:450:551: error: unknown token in expression --- jitc_tools.o --- jitc_tools.S:820:6: error: unknown token in expression mov %ebp, %edi ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*0)] ^ --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- jitc_tools.S:822:2: note: while in macro instantiation getCurCPU 0 ^ jitc_tools.S:825:6: error: unknown token in expression mov %eax, %ebp ^ --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: --- jitc_tools.o --- jitc_tools.S:834:6: error: unknown token in expression pop %rcx ^ jitc_tools.S:835:6: error: unknown token in expression add %rsp, %rcx ^ jitc_tools.S:836:6: error: unknown token in expression pop %r15 ^ jitc_tools.S:837:6: error: unknown token in expression pop %r14 ^ jitc_tools.S:838:6: error: unknown token in expression pop %r13 ^ jitc_tools.S:839:6: error: unknown token in expression pop %r12 ^ jitc_tools.S:840:6: error: unknown token in expression pop %rbp ^ jitc_tools.S:841:6: error: unknown token in expression pop %rbx ^ jitc_tools.S:851:7: error: unknown token in expression push %rbx ^ jitc_tools.S:852:6: error: unknown token in expression mov %eax, %edi ^ jitc_tools.S:854:7: error: unknown token in expression mov [%rsi], %eax ^ jitc_tools.S:855:7: error: unknown token in expression mov [%rsi+4], %ecx ^ jitc_tools.S:856:7: error: unknown token in expression mov [%rsi+8], %edx ^ --- jitc_mmu.o --- ^ --- jitc_tools.o --- jitc_tools.S:857:7: error: unknown token in expression mov [%rsi+12], %ebx ^ jitc_tools.S:858:6: error: unknown token in expression pop %rbx ^ --- jitc_mmu.o --- jitc_mmu.S:450:569: error: unknown token in expression --- jitc_tools.o --- jitc_tools.S:859:6: error: unknown token in expression mov %eax, 1 ^ --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:608: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:633: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:694: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:704: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:748: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:770: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:786: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:802: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_--- jitc_tools.o --- *** [jitc_tools.o] Error code 1 make[4]: stopped in /data/scratch/emulators/pearpc/work/pearpc-0.5/src/cpu/cpu_jitc_x86_64 --- jitc_mmu.o --- 0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:816: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:838: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:855: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:871: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:887: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:903: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:935: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:969: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:1011: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:1053: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:1081: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:1100: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:1130: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:1183: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:1209: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:450:1242: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:146: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:162: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:175: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:195: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:220: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:236: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:260: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:281: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:317: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:363: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:383: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:392: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:408: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:426: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:437: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:452: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:468: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:551: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:569: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:608: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:633: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:694: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:704: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:748: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:770: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:786: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:802: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:816: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:838: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:855: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:871: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:887: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:903: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:935: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:969: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:1011: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:1053: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:1081: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:1100: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:1130: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:1183: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:1209: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:451:1242: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:146: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:162: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:175: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:195: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:220: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:236: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:260: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:281: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:317: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:363: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:383: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:392: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:408: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:426: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:437: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:452: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:468: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:551: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:569: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:608: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:633: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:694: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:704: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:748: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:770: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:786: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:802: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:816: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:838: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: --- ppc_dec.o --- mv -f .deps/ppc_dec.Tpo .deps/ppc_dec.Po --- jitc_mmu.o --- ^ jitc_mmu.S:452:855: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:871: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:887: error: expected absolute expression --- jitc.o --- mv -f .deps/jitc.Tpo .deps/jitc.Po --- jitc_mmu.o --- mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:903: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:935: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:969: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:1011: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:1053: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:1081: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:1100: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:1130: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:1183: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:1209: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:452:1242: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:146: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:162: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:175: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:195: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:220: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:236: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:260: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:281: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:317: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:363: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:383: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:392: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:408: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:426: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:437: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:452: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:468: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:551: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:569: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:608: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:633: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:694: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:704: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:748: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:770: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:786: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:802: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:816: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:838: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:855: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:871: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:887: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:903: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:935: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:969: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:1011: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:1053: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:1081: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:1100: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:1130: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:1183: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:1209: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:453:1242: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:146: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:162: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:175: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:195: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:220: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:236: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:260: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:281: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:317: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:363: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:383: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:392: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:408: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:426: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:437: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:452: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:468: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:551: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:569: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:608: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:633: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:694: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:704: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:748: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:770: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:786: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:802: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:816: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:838: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:855: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:871: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:887: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:903: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:935: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:969: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:1011: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:1053: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:1081: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:1100: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:1130: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:1183: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:1209: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:454:1242: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:146: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:162: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:175: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:195: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:220: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:236: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:260: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:281: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:317: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:363: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:383: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:392: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:408: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:426: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:437: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:452: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:468: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:551: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:569: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:608: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:633: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:694: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:704: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:748: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:770: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:786: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:802: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:816: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:838: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:855: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:871: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:887: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:903: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:935: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:969: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:1011: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:1053: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:1081: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:1100: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:1130: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:1183: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:1209: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:455:1242: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: --- ppc_opc.o --- mv -f .deps/ppc_opc.Tpo .deps/ppc_opc.Po --- jitc_mmu.o --- ^ jitc_mmu.S:458:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:459:6: error: unknown token in expression not %ebx ^ jitc_mmu.S:460:6: error: unknown token in expression and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:461:6: error: unknown token in expression shl %ebx, 6 ^ jitc_mmu.S:462:5: error: unknown token in expression or %ebx, [%rdi+pagetable_base] ^ jitc_mmu.S:464:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:58: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:68: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:84: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:112: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:148: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:164: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:177: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:197: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:222: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:238: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:262: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:283: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:318: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:340: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:364: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:384: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:393: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:409: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:427: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:438: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:453: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:469: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:521: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:573: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:612: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:637: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:698: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:708: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:730: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:751: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:773: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:789: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:805: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:819: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:841: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:858: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:874: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:890: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:906: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:938: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:972: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:1014: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:1056: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:1084: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:1103: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:1133: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:1186: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:1212: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:464:1245: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:58: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:68: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:84: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:112: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:148: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:164: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:177: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:197: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:222: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:238: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:262: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:283: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:318: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:340: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:364: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:384: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:393: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:409: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:427: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:438: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:453: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:469: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:521: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:573: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:612: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:637: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:698: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:708: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:730: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:751: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:773: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:789: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:805: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:819: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:841: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:858: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:874: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:890: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:906: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:938: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:972: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:1014: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:1056: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:1084: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:1103: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:1133: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:1186: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:1212: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:465:1245: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:149: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:165: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:178: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:198: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:223: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:263: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:284: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:320: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:366: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:386: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:395: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:411: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:429: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:440: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:455: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:471: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:575: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:614: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:639: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:700: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:710: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:754: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:776: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:792: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:808: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:822: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:844: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:861: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:877: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:893: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:909: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:941: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:975: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:1017: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:1059: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:1087: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:1106: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:1136: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:1189: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:1215: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:466:1248: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:149: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:165: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:178: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:198: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:223: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:263: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:284: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:320: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:366: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:386: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:395: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:411: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:429: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:440: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:455: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:471: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:575: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:614: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:639: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:700: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:710: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:754: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:776: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:792: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:808: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:822: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:844: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:861: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:877: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:893: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:909: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:941: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:975: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:1017: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:1059: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:1087: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:1106: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:1136: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:1189: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:1215: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:467:1248: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:149: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:165: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:178: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:198: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:223: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:263: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:284: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:320: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:366: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:386: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:395: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:411: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:429: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:440: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:455: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:471: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:575: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:614: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:639: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:700: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:710: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:754: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:776: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:792: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:808: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:822: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:844: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:861: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:877: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:893: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:909: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:941: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:975: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:1017: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:1059: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:1087: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:1106: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:1136: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:1189: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:1215: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:468:1248: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:149: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:165: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:178: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:198: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:223: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:263: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:284: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:320: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:366: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:386: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:395: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:411: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:429: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:440: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:455: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:471: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:575: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:614: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:639: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:700: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:710: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:754: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:776: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:792: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:808: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:822: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:844: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:861: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:877: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:893: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:909: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:941: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:975: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:1017: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ --- ppc_alu.o --- mv -f .deps/ppc_alu.Tpo .deps/ppc_alu.Po --- jitc_mmu.o --- jitc_mmu.S:469:1059: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:1087: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:1106: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:1136: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:1189: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:1215: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:469:1248: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:149: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:165: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:178: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:198: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:223: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:263: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:284: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:320: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:366: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:386: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:395: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:411: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:429: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:440: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:455: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:471: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:575: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:614: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:639: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:700: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:710: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:754: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:776: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:792: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:808: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:822: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:844: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:861: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:877: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:893: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:909: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:941: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:975: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:1017: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:1059: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:1087: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:1106: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:1136: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:1189: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:1215: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:470:1248: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:149: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:165: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:178: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:198: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:223: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:263: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:284: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:320: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:366: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:386: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:395: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:411: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:429: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:440: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:455: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:471: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:575: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:614: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:639: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:700: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:710: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:754: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:776: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:792: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:808: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:822: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:844: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:861: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:877: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:893: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:909: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:941: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:975: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:1017: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:1059: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:1087: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:1106: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:1136: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:1189: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:1215: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:471:1248: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:475:6: error: unknown token in expression pop %rax ^ jitc_mmu.S:476:6: error: unknown token in expression pop %rdx # return address is no longer needed ^ jitc_mmu.S:477:6: error: unknown token in expression pop %rcx # bytes to roll back ^ jitc_mmu.S:478:6: error: unknown token in expression add %rsp, %rcx ^ jitc_mmu.S:480:6: error: unknown token in expression mov %ecx, (1<<30) # PPC_EXC_SRR1_PAGE ^ jitc_mmu.S:484:6: error: unknown token in expression pop %rdx # return address is no longer needed ^ jitc_mmu.S:485:6: error: unknown token in expression pop %rcx # bytes to roll back ^ jitc_mmu.S:486:6: error: unknown token in expression add %rsp, %rcx ^ jitc_mmu.S:488:6: error: unknown token in expression mov %ecx, (1<<28) # PPC_EXC_SRR1_GUARD ^ jitc_mmu.S:493:6: error: unknown token in expression mov %edx, %eax ^ jitc_mmu.S:494:6: error: unknown token in expression mov %ecx, %eax ^ jitc_mmu.S:495:6: error: unknown token in expression shr %edx, 12 ^ jitc_mmu.S:496:6: error: unknown token in expression and %ecx, 0xfffff000 ^ jitc_mmu.S:497:6: error: unknown token in expression and %edx, 32 -1 ^ jitc_mmu.S:498:6: error: unknown token in expression cmp %ecx, [gMemorySize] ^ jitc_mmu.S:499:6: error: unknown token in expression mov %ebx, [gMemory] ^ jitc_mmu.S:501:7: error: unknown token in expression mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx ^ jitc_mmu.S:502:17: error: unknown token in expression mov dword ptr [%rdi+tlb_data_0_phys + %rdx*4], %ebx ^ jitc_mmu.S:503:6: error: unknown token in expression add %eax, %ebx ^ jitc_mmu.S:518:6: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_data_0_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_data_0_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:518:22: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_data_0_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_data_0_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:518:38: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_data_0_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_data_0_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:518:52: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_data_0_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_data_0_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:518:74: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_data_0_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_data_0_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:518:91: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_data_0_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_data_0_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:518:141: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_data_0_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_data_0_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:520:17: error: unknown token in expression test byte ptr [%rdi+msr], (1<<4) # MSR_DR ^ jitc_mmu.S:523:6: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:38: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:72: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:88: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:122: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:141: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:155: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:171: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:208: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:224: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:240: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:262: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:294: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:328: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:342: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:358: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:374: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:391: error: expected absolute expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:407: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:439: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:472: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:489: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:531: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:573: error: expected absolute expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:589: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:625: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:655: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:684: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:523:706: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:6: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:38: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:72: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:88: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:122: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:141: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:155: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:171: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:208: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:224: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:240: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:262: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:294: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:328: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:342: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:358: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:374: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:391: error: expected absolute expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:407: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:439: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:472: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:489: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:531: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:573: error: expected absolute expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:589: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:625: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:655: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:684: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:524:706: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:6: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:38: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:72: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:88: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:122: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:141: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:155: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:171: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:208: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:224: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:240: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:262: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:294: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:328: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:342: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:358: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:374: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:391: error: expected absolute expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:407: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:439: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:472: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:489: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:531: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:573: error: expected absolute expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:589: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:625: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:655: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:684: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:525:706: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:6: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:38: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:72: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:88: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:122: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:141: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:155: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:171: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:208: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:224: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:240: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:262: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:294: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:328: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:342: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:358: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:374: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:391: error: expected absolute expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:407: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:439: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:472: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:489: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:531: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:573: error: expected absolute expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:589: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:625: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:655: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:684: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:526:706: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:528:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:529:6: error: unknown token in expression shr %ebx, 28 # SR ^ jitc_mmu.S:530:6: error: unknown token in expression mov %edx, [%rdi+sr+4*%rbx] ^ jitc_mmu.S:534:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:535:6: error: unknown token in expression mov %r12d, %edx ^ jitc_mmu.S:536:6: error: unknown token in expression shr %ebx, 12 ^ jitc_mmu.S:537:6: error: unknown token in expression mov %r8d, %eax ^ jitc_mmu.S:538:6: error: unknown token in expression and %ebx, 0xffff ^ jitc_mmu.S:539:6: error: unknown token in expression shr %r8d, 22 ^ jitc_mmu.S:540:6: error: unknown token in expression and %r12d, 0xffffff ^ jitc_mmu.S:541:6: error: unknown token in expression and %r8d, 0x3f ^ jitc_mmu.S:549:6: error: unknown token in expression xor %ebx, %r12d ^ jitc_mmu.S:553:7: error: unknown token in expression push %rax ^ jitc_mmu.S:554:7: error: unknown token in expression push %rbx # das brauch ich ^ jitc_mmu.S:556:6: error: unknown token in expression and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:557:6: error: unknown token in expression shl %ebx, 6 ^ jitc_mmu.S:558:5: error: unknown token in expression or %ebx, [%rdi+pagetable_base] ^ jitc_mmu.S:562:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:58: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:68: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:84: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:112: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:145: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:161: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:174: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:194: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:219: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:235: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:259: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:280: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:315: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:337: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:361: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:381: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:390: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:406: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:424: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:435: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:450: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:466: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:518: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:549: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:567: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:606: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:631: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:692: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:702: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:724: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:745: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:767: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:783: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:799: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:813: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:835: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:852: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:868: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:884: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:900: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:932: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:966: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:1008: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:1050: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:1078: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:1097: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:1127: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:1180: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:1206: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:562:1239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:58: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:68: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:84: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:112: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:145: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:161: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:174: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:194: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:219: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:235: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:259: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:280: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:315: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:337: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:361: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:381: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:390: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:406: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:424: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:435: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:450: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:466: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:518: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:549: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:567: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:606: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:631: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:692: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:702: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:724: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:745: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:767: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:783: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:799: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:813: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:835: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:852: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:868: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:884: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:900: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:932: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:966: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:1008: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:1050: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:1078: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:1097: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:1127: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:1180: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:1206: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:563:1239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:146: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:162: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:175: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:195: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:220: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:236: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:260: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:281: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:317: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:363: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:383: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:392: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:408: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:426: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:437: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:452: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:468: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:551: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:569: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:608: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:633: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:694: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:704: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:748: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:770: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:786: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:802: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:816: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:838: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:855: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:871: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:887: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:903: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:935: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:969: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:1011: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:1053: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:1081: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:1100: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:1130: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:1183: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:1209: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:564:1242: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:146: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:162: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:175: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:195: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:220: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:236: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:260: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:281: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:317: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:363: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:383: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:392: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:408: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:426: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:437: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:452: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:468: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:551: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:569: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:608: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:633: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:694: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:704: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:748: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:770: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:786: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:802: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:816: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:838: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:855: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:871: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:887: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:903: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:935: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:969: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:1011: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:1053: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:1081: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:1100: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:1130: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:1183: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:1209: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:565:1242: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:146: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:162: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:175: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:195: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:220: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:236: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:260: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:281: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:317: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:363: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:383: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:392: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:408: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:426: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:437: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:452: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:468: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:551: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:569: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:608: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:633: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:694: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:704: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:748: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:770: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:786: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:802: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:816: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:838: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:855: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:871: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:887: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:903: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:935: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:969: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:1011: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:1053: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:1081: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:1100: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:1130: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:1183: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:1209: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:566:1242: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:146: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:162: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:175: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:195: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:220: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:236: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:260: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:281: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:317: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:363: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:383: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:392: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:408: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:426: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:437: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:452: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:468: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:551: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:569: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:608: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:633: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:694: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:704: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:748: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:770: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:786: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:802: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:816: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:838: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:855: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:871: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:887: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:903: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:935: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:969: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:1011: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:1053: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:1081: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:1100: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:1130: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:1183: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:1209: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:567:1242: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:146: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:162: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:175: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:195: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:220: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:236: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:260: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:281: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:317: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:363: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:383: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:392: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:408: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:426: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:437: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:452: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:468: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:551: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:569: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:608: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:633: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:694: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:704: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:748: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:770: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:786: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:802: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:816: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:838: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:855: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:871: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:887: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:903: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:935: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:969: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:1011: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:1053: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:1081: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:1100: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:1130: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:1183: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:1209: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:568:1242: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:146: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:162: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:175: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:195: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:220: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:236: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:260: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:281: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:317: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:363: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:383: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:392: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:408: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:426: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:437: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:452: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:468: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:551: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:569: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:608: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:633: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:694: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:704: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:748: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:770: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:786: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:802: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:816: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:838: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:855: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:871: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:887: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:903: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:935: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:969: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:1011: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:1053: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:1081: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:1100: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:1130: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:1183: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:1209: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:569:1242: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:572:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:573:6: error: unknown token in expression not %ebx ^ jitc_mmu.S:574:6: error: unknown token in expression and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:575:6: error: unknown token in expression shl %ebx, 6 ^ jitc_mmu.S:576:5: error: unknown token in expression or %ebx, [%rdi+pagetable_base] ^ jitc_mmu.S:578:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:58: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:68: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:84: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:112: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:148: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:164: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:177: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:197: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:222: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:238: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:262: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:283: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:318: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:340: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:364: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:384: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:393: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:409: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:427: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:438: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:453: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:469: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:521: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:573: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:612: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:637: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:698: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:708: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:730: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:751: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:773: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:789: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:805: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:819: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:841: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:858: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:874: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:890: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:906: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:938: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:972: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:1014: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:1056: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:1084: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:1103: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:1133: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:1186: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:1212: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:578:1245: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:58: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:68: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:84: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:112: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:148: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:164: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:177: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:197: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:222: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:238: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:262: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:283: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:318: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:340: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:364: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:384: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:393: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:409: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:427: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:438: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:453: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:469: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:521: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:573: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:612: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:637: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:698: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:708: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:730: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:751: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:773: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:789: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:805: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:819: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:841: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:858: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:874: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:890: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:906: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:938: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:972: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:1014: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:1056: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:1084: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:1103: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:1133: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:1186: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:1212: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:579:1245: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:149: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:165: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:178: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:198: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:223: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:263: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:284: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:320: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:366: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:386: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:395: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:411: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:429: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:440: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:455: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:471: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:575: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb--- ppc_fpu.o --- mv -f .deps/ppc_fpu.Tpo .deps/ppc_fpu.Po --- jitc_mmu.o --- _data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:614: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:639: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:700: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:710: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:754: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:776: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:792: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:808: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:822: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:844: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:861: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:877: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:893: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:909: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:941: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:975: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:1017: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:1059: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:1087: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:1106: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:1136: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:1189: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:1215: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:580:1248: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:149: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:165: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:178: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:198: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:223: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:263: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:284: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:320: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:366: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:386: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:395: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:411: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:429: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:440: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:455: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:471: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:575: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:614: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:639: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:700: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:710: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:754: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:776: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:792: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:808: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:822: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:844: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:861: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:877: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:893: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:909: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:941: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:975: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:1017: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:1059: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:1087: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:1106: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:1136: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:1189: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:1215: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:1248: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:149: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:165: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:178: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:198: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:223: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:263: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:284: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:320: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:366: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:386: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:395: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:411: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:429: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:440: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:455: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:471: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:575: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:614: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:639: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:700: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:710: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:754: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:776: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:792: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:808: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:822: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:844: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:861: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:877: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:893: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:909: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:941: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:975: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:1017: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:1059: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:1087: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:1106: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:1136: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:1189: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:1215: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:1248: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:149: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:165: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:178: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:198: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:223: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:263: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:284: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:320: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:366: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:386: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:395: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:411: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:429: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:440: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:455: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:471: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:575: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:614: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:639: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:700: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:710: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:754: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:776: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:792: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:808: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:822: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:844: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:861: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:877: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:893: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:909: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:941: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:975: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:1017: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:1059: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:1087: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:1106: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:1136: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:1189: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:1215: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:1248: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:149: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:165: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:178: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:198: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:223: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:263: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:284: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:320: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:366: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:386: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:395: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:411: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:429: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:440: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:455: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:471: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:575: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:614: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:639: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:700: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:710: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:754: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:776: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:792: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:808: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:822: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:844: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:861: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:877: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:893: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:909: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:941: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:975: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:1017: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:1059: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:1087: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:1106: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:1136: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:1189: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:1215: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:1248: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:149: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:165: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:178: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:198: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:223: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:263: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:284: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:320: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:366: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:386: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:395: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:411: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:429: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:440: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:455: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:471: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:575: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:614: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:639: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:700: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:710: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:754: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:776: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:792: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:808: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:822: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:844: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:861: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:877: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:893: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:909: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:941: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:975: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:1017: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:1059: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:1087: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:1106: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:1136: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:1189: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:1215: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:1248: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:589:6: error: unknown token in expression pop %rax ^ jitc_mmu.S:590:6: error: unknown token in expression pop %rdx # return address is no longer needed ^ jitc_mmu.S:591:6: error: unknown token in expression pop %rcx # bytes to roll back ^ jitc_mmu.S:592:6: error: unknown token in expression add %rsp, %rcx ^ jitc_mmu.S:594:6: error: unknown token in expression mov %ecx, (1<<30) # PPC_EXC_DSISR_PAGE ^ jitc_mmu.S:599:6: error: unknown token in expression mov %edx, %eax ^ jitc_mmu.S:600:6: error: unknown token in expression mov %ecx, %eax ^ jitc_mmu.S:601:6: error: unknown token in expression shr %edx, 12 ^ jitc_mmu.S:602:6: error: unknown token in expression and %ecx, 0xfffff000 ^ jitc_mmu.S:603:6: error: unknown token in expression and %edx, 32 -1 ^ jitc_mmu.S:604:6: error: unknown token in expression cmp %ecx, [gMemorySize] ^ jitc_mmu.S:605:6: error: unknown token in expression mov %ebx, [gMemory] ^ jitc_mmu.S:607:7: error: unknown token in expression mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx ^ jitc_mmu.S:608:17: error: unknown token in expression mov dword ptr [%rdi+tlb_data_8_phys + %rdx*4], %ebx ^ jitc_mmu.S:609:6: error: unknown token in expression add %eax, %ebx ^ jitc_mmu.S:624:6: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_data_8_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_data_8_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:624:22: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_data_8_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_data_8_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:624:38: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_data_8_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_data_8_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:624:52: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_data_8_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_data_8_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:624:74: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_data_8_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_data_8_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:624:91: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_data_8_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_data_8_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:624:141: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_data_8_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_data_8_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:626:17: error: unknown token in expression test byte ptr [%rdi+msr], (1<<4) # MSR_DR ^ jitc_mmu.S:629:6: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:38: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:72: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:88: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:122: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:141: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:155: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:171: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:208: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:224: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:240: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:262: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:294: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:328: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:342: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:358: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:374: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:391: error: expected absolute expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:407: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:439: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:472: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:489: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:531: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:573: error: expected absolute expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:589: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:625: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:655: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:684: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:629:706: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:6: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:38: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:72: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:88: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:122: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:141: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:155: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:171: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:208: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:224: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:240: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:262: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:294: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:328: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:342: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:358: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:374: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:391: error: expected absolute expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:407: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:439: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:472: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:489: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:531: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:573: error: expected absolute expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:589: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:625: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:655: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:684: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:630:706: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:6: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:38: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:72: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:88: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:122: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:141: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:155: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:171: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:208: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:224: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:240: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:262: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:294: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:328: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:342: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:358: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:374: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:391: error: expected absolute expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:407: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:439: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:472: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:489: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:531: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:573: error: expected absolute expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:589: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:625: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:655: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:684: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:631:706: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:6: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:38: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:72: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:88: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:122: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:141: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:155: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:171: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:208: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:224: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:240: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:262: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:294: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:328: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:342: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:358: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:374: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:391: error: expected absolute expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:407: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:439: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:472: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:489: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:531: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:573: error: expected absolute expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:589: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:625: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:655: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:684: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:632:706: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:634:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:635:6: error: unknown token in expression shr %eax, 28 # SR ^ jitc_mmu.S:636:6: error: unknown token in expression mov %edx, [%rdi+sr+4*%rax] ^ jitc_mmu.S:640:6: error: unknown token in expression mov %eax, %ebx ^ jitc_mmu.S:641:6: error: unknown token in expression mov %r8d, %ebx ^ jitc_mmu.S:642:6: error: unknown token in expression mov %r12d, %edx ^ jitc_mmu.S:643:6: error: unknown token in expression shr %ebx, 12 ^ jitc_mmu.S:644:6: error: unknown token in expression and %ebx, 0xffff ^ jitc_mmu.S:645:6: error: unknown token in expression shr %r8d, 22 ^ jitc_mmu.S:646:6: error: unknown token in expression and %r12d, 0xffffff ^ jitc_mmu.S:647:6: error: unknown token in expression and %r8d, 0x3f ^ jitc_mmu.S:655:6: error: unknown token in expression xor %ebx, %r12d ^ jitc_mmu.S:659:7: error: unknown token in expression push %rax ^ jitc_mmu.S:660:7: error: unknown token in expression push %rbx # das brauch ich ^ jitc_mmu.S:662:6: error: unknown token in expression and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:663:6: error: unknown token in expression shl %ebx, 6 ^ jitc_mmu.S:664:5: error: unknown token in expression or %ebx, [%rdi+pagetable_base] ^ jitc_mmu.S:668:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:58: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:68: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:84: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:112: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:145: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:161: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:174: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:194: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:219: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:235: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:259: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:280: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:315: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:337: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:361: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:381: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:390: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:406: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:424: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:435: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:450: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:466: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:518: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:549: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:567: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:606: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:655: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:692: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:702: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:724: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:745: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:767: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:783: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:799: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:813: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:835: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:852: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:868: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:884: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:900: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:932: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:966: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:1008: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:1050: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:1078: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:1097: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:1127: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:1180: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:1206: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:668:1239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:58: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:68: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:84: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:112: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:145: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:161: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:174: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:194: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:219: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:235: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:259: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:280: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:315: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:337: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:361: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:381: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:390: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:406: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:424: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:435: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:450: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:466: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:518: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:549: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:567: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:606: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:655: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:692: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:702: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:724: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:745: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:767: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:783: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:799: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:813: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:835: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:852: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:868: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:884: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:900: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:932: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:966: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:1008: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:1050: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:1078: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:1097: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:1127: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:1180: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:1206: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:669:1239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:146: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:162: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:175: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:195: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:220: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:236: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:260: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:281: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:317: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:363: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:383: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:392: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:408: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:426: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:437: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:452: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:468: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:551: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:569: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:608: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:657: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:694: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:704: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:748: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:770: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:786: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:802: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:816: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:838: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:855: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:871: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:887: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:903: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:935: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:969: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:1011: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:1053: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:1081: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:1100: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:1130: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:1183: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:1209: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:670:1242: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:146: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:162: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:175: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:195: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:220: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:236: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:260: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:281: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:317: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:363: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:383: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:392: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:408: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:426: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:437: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:452: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:468: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:551: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:569: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:608: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:657: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:694: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:704: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:748: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:770: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:786: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:802: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:816: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:838: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:855: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:871: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:887: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:903: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:935: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:969: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:1011: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:1053: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:1081: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:1100: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:1130: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:1183: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:1209: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:671:1242: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:146: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:162: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:175: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:195: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:220: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:236: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:260: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:281: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:317: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:363: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:383: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:392: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:408: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:426: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:437: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:452: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:468: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:551: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:569: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:608: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:657: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:694: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:704: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:748: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:770: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:786: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:802: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:816: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:838: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:855: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:871: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:887: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:903: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:935: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:969: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:1011: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:1053: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:1081: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:1100: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:1130: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:1183: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:1209: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:672:1242: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:146: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:162: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:175: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:195: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:220: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:236: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:260: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:281: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:317: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:363: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:383: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:392: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:408: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:426: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:437: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:452: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:468: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:551: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:569: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:608: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:657: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:694: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:704: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:748: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:770: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:786: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:802: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:816: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:838: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:855: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:871: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:887: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:903: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:935: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:969: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:1011: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:1053: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:1081: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: --- ppc_mmu.o --- mv -f .deps/ppc_mmu.Tpo .deps/ppc_mmu.Po --- jitc_mmu.o --- ^ jitc_mmu.S:673:1100: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:1130: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:1183: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:1209: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:673:1242: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:146: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:162: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:175: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:195: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:220: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:236: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:260: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:281: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:317: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:363: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:383: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:392: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:408: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:426: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:437: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:452: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:468: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:551: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:569: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:608: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:657: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:694: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:704: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:748: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:770: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:786: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:802: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:816: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:838: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:855: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:871: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:887: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:903: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:935: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:969: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:1011: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:1053: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:1081: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:1100: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:1130: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:1183: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:1209: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:674:1242: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:146: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:162: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:175: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:195: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:220: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:236: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:260: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:281: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:317: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:363: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:383: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:392: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:408: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:426: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:437: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:452: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:468: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:551: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:569: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:608: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:657: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:694: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:704: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:748: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:770: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:786: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:802: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:816: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:838: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:855: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:871: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:887: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:903: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:935: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:969: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:1011: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:1053: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:1081: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:1100: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:1130: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:1183: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:1209: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:675:1242: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:678:6: error: unknown token in expression mov %ebx, [%rsp] ^ jitc_mmu.S:679:6: error: unknown token in expression add %rsp, 8 ^ jitc_mmu.S:680:6: error: unknown token in expression not %ebx ^ jitc_mmu.S:681:6: error: unknown token in expression and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:682:6: error: unknown token in expression shl %ebx, 6 ^ jitc_mmu.S:683:5: error: unknown token in expression or %ebx, [%rdi+pagetable_base] ^ jitc_mmu.S:685:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:58: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:68: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:84: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:112: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:148: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:164: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:177: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:197: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:222: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:238: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:262: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:283: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:318: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:340: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:364: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:384: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:393: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:409: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:427: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:438: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:453: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:469: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:521: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:573: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:612: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:661: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:698: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:708: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:730: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:751: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:773: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:789: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:805: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:819: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:841: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:858: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:874: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:890: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:906: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:938: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:972: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:1014: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:1056: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:1084: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:1103: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:1133: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:1186: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:1212: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:685:1245: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:58: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:68: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:84: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:112: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:148: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:164: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:177: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:197: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:222: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:238: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:262: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:283: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:318: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:340: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:364: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:384: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:393: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:409: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:427: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:438: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:453: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:469: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:521: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:573: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:612: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:661: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:698: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:708: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:730: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:751: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:773: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:789: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:805: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:819: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:841: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:858: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:874: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:890: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:906: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:938: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:972: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:1014: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:1056: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:1084: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:1103: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:1133: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:1186: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:1212: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:686:1245: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:149: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:165: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:178: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:198: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:223: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:263: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:284: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:320: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:366: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:386: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:395: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:411: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:429: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:440: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:455: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:471: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:575: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:614: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:663: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:700: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:710: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:754: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:776: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:792: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:808: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:822: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:844: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:861: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:877: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:893: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:909: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:941: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:975: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:1017: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:1059: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:1087: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:1106: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:1136: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:1189: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:1215: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:687:1248: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:149: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:165: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:178: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:198: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:223: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:263: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:284: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:320: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:366: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:386: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:395: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:411: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:429: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:440: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:455: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:471: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:575: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:614: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:663: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:700: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:710: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:754: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:776: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:792: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:808: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:822: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:844: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:861: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:877: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:893: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:909: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:941: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:975: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:1017: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:1059: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:1087: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:1106: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:1136: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:1189: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:1215: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:688:1248: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:149: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:165: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:178: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:198: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:223: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:263: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:284: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:320: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:366: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:386: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:395: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:411: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:429: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:440: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:455: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:471: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:575: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:614: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:663: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:700: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:710: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:754: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:776: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:792: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:808: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:822: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:844: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:861: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:877: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:893: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:909: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:941: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:975: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:1017: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:1059: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:1087: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:1106: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:1136: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:1189: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:1215: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:689:1248: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:149: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:165: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:178: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:198: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:223: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:263: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:284: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:320: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:366: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:386: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:395: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:411: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:429: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:440: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:455: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:471: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:575: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:614: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:663: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:700: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:710: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:754: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:776: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:792: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:808: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:822: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:844: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:861: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:877: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:893: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:909: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:941: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:975: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:1017: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:1059: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:1087: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:1106: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:1136: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:1189: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:1215: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:690:1248: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:149: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:165: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:178: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:198: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:223: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:263: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:284: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:320: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:366: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:386: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:395: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:411: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:429: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:440: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:455: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:471: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:575: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:614: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:663: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:700: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:710: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:754: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:776: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:792: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:808: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:822: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:844: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:861: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:877: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:893: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:909: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:941: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:975: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:1017: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:1059: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:1087: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:1106: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:1136: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:1189: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:1215: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:691:1248: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:6: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:27: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:59: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:69: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:85: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:113: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:149: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:165: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:178: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:198: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:223: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:239: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:263: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:284: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:320: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:366: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:386: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:395: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:411: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:429: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:440: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:455: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:471: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:575: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:614: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:663: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:700: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:710: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:754: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:776: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:792: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:808: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:822: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:844: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:861: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:877: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:893: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:909: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:941: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:975: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:1017: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:1059: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:1087: error: expected absolute expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:1106: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:1136: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:1189: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:1215: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:692:1248: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4+56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:696:6: error: unknown token in expression pop %rax ^ jitc_mmu.S:697:6: error: unknown token in expression pop %rdx # return address is no longer needed ^ jitc_mmu.S:698:6: error: unknown token in expression pop %rbx # bytes to roll back ^ jitc_mmu.S:699:6: error: unknown token in expression add %rsp, %rbx ^ jitc_mmu.S:701:6: error: unknown token in expression mov %ecx, (1<<30)|(1<<25) # PPC_EXC_DSISR_PAGE | PPC_EXC_DSISR_STORE ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :4:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:715:2: note: while in macro instantiation mmu_prologue ^ :5:7: error: unknown token in expression mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:715:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:717:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:720:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:722:7: error: unknown token in expression mov [%rax], %dl ^ jitc_mmu.S:725:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:726:8: error: unknown token in expression movzx %esi, %dl ^ jitc_mmu.S:727:6: error: unknown token in expression mov %edx, 1 ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :4:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:741:2: note: while in macro instantiation mmu_prologue ^ :5:7: error: unknown token in expression mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:741:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:742:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:743:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:744:6: error: unknown token in expression cmp %ebx, 4095 ^ jitc_mmu.S:747:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:750:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:752:7: error: unknown token in expression mov [%rax], %dh ^ jitc_mmu.S:753:7: error: unknown token in expression mov [%rax+1], %dl ^ jitc_mmu.S:756:6: error: unknown token in expression rol %dx, 8 ^ jitc_mmu.S:757:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:758:8: error: unknown token in expression movzx %esi, %dx ^ jitc_mmu.S:759:6: error: unknown token in expression mov %edx, 2 ^ jitc_mmu.S:763:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:764:7: error: unknown token in expression push %rax ^ jitc_mmu.S:767:6: error: unknown token in expression mov %edx, [%rsp+8] ^ jitc_mmu.S:769:7: error: unknown token in expression mov [%rax], %dh ^ jitc_mmu.S:771:6: error: unknown token in expression pop %rax ^ jitc_mmu.S:772:6: error: unknown token in expression inc %eax ^ jitc_mmu.S:775:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:777:7: error: unknown token in expression mov [%rax], %dl ^ jitc_mmu.S:781:8: error: unknown token in expression movzx %esi, %dh ^ jitc_mmu.S:782:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:783:6: error: unknown token in expression mov %edx, 1 ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ jitc_mmu.S:785:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:788:8: error: unknown token in expression movzx %esi, %dl ^ jitc_mmu.S:789:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:790:6: error: unknown token in expression mov %edx, 1 ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :4:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:804:2: note: while in macro instantiation mmu_prologue ^ :5:7: error: unknown token in expression mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:804:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:805:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:806:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:807:6: error: unknown token in expression cmp %ebx, 4093 ^ jitc_mmu.S:810:8: error: unknown token in expression bswap %edx ^ jitc_mmu.S:812:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:815:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:817:7: error: unknown token in expression mov [%rax], %edx ^ jitc_mmu.S:821:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:822:6: error: unknown token in expression mov %esi, %edx ^ jitc_mmu.S:823:6: error: unknown token in expression mov %edx, 4 ^ jitc_mmu.S:827:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:828:7: error: unknown token in expression push %rax ^ jitc_mmu.S:831:6: error: unknown token in expression mov %edx, [%rsp+8] ^ jitc_mmu.S:832:6: error: unknown token in expression mov %ebx, [%rsp] ^ jitc_mmu.S:833:6: error: unknown token in expression mov %ecx, 4096 ^ jitc_mmu.S:835:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:836:6: error: unknown token in expression sub %ecx, %ebx ^ jitc_mmu.S:838:7: error: unknown token in expression rol %edx, 8 ^ jitc_mmu.S:839:8: error: unknown token in expression mov [%rax], %dl ^ jitc_mmu.S:840:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:841:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:844:7: error: unknown token in expression mov [%rsp+8], %edx ^ jitc_mmu.S:845:6: error: unknown token in expression mov %eax, [%rsp] ^ jitc_mmu.S:846:6: error: unknown token in expression add %eax, 4 ^ jitc_mmu.S:849:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:850:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:852:6: error: unknown token in expression add %ebx, 4 ^ jitc_mmu.S:853:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:854:6: error: unknown token in expression sub %rax, %rbx ^ jitc_mmu.S:856:7: error: unknown token in expression rol %edx, 8 ^ jitc_mmu.S:857:8: error: unknown token in expression mov [%rax], %dl ^ jitc_mmu.S:858:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:859:7: error: unknown token in expression dec %ebx ^ jitc_mmu.S:864:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:865:6: error: unknown token in expression sub %ecx, %ebx ^ jitc_mmu.S:867:7: error: unknown token in expression rol %edx, 8 ^ jitc_mmu.S:868:8: error: unknown token in expression push %rax ^ jitc_mmu.S:869:8: error: unknown token in expression push %rcx ^ jitc_mmu.S:870:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:871:9: error: unknown token in expression movzx %esi, %dl ^ jitc_mmu.S:872:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:873:7: error: unknown token in expression mov %edx, 1 ^ jitc_mmu.S:875:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:876:7: error: unknown token in expression pop %rcx ^ jitc_mmu.S:877:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:878:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:879:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:883:6: error: unknown token in expression add %ebx, 4 ^ jitc_mmu.S:884:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:885:6: error: unknown token in expression sub %eax, %ebx ^ jitc_mmu.S:887:7: error: unknown token in expression rol %edx, 8 ^ jitc_mmu.S:888:8: error: unknown token in expression push %rax ^ jitc_mmu.S:889:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:890:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:891:9: error: unknown token in expression movzx %esi, %dl ^ jitc_mmu.S:892:7: error: unknown token in expression mov %edx, 1 ^ jitc_mmu.S:894:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:895:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:896:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:897:7: error: unknown token in expression dec %rbx ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :4:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:911:2: note: while in macro instantiation mmu_prologue ^ :5:7: error: unknown token in expression mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:911:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:912:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:913:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:914:6: error: unknown token in expression cmp %ebx, 4089 ^ jitc_mmu.S:917:8: error: unknown token in expression bswap %rdx ^ jitc_mmu.S:919:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:922:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:924:7: error: unknown token in expression mov [%rax], %rdx ^ jitc_mmu.S:927:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:928:6: error: unknown token in expression mov %rsi, %rdx ^ jitc_mmu.S:932:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:933:7: error: unknown token in expression push %rax ^ jitc_mmu.S:936:6: error: unknown token in expression mov %rdx, [%rsp+8] ^ jitc_mmu.S:937:6: error: unknown token in expression mov %ebx, [%rsp] ^ jitc_mmu.S:938:6: error: unknown token in expression mov %ecx, 4096 ^ jitc_mmu.S:940:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:941:6: error: unknown token in expression sub %ecx, %ebx ^ jitc_mmu.S:943:7: error: unknown token in expression rol %rdx, 8 ^ jitc_mmu.S:944:8: error: unknown token in expression mov [%rax], %dl ^ jitc_mmu.S:945:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:946:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:949:7: error: unknown token in expression mov [%rsp+8], %rdx ^ jitc_mmu.S:950:6: error: unknown token in expression mov %eax, [%rsp] ^ jitc_mmu.S:951:6: error: unknown token in expression add %eax, 8 ^ jitc_mmu.S:954:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:955:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:957:6: error: unknown token in expression add %ebx, 8 ^ jitc_mmu.S:958:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:959:6: error: unknown token in expression sub %rax, %rbx ^ jitc_mmu.S:961:7: error: unknown token in expression rol %rdx, 8 ^ jitc_mmu.S:962:8: error: unknown token in expression mov [%rax], %dl ^ jitc_mmu.S:963:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:964:7: error: unknown token in expression dec %ebx ^ jitc_mmu.S:969:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:970:6: error: unknown token in expression sub %ecx, %ebx ^ jitc_mmu.S:972:7: error: unknown token in expression rol %rdx, 8 ^ jitc_mmu.S:973:8: error: unknown token in expression push %rax ^ jitc_mmu.S:974:8: error: unknown token in expression push %rcx ^ jitc_mmu.S:975:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:976:9: error: unknown token in expression movzx %esi, %dl ^ jitc_mmu.S:977:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:978:7: error: unknown token in expression mov %edx, 1 ^ jitc_mmu.S:980:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:981:7: error: unknown token in expression pop %rcx ^ jitc_mmu.S:982:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:983:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:984:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:988:6: error: unknown token in expression add %ebx, 4 ^ jitc_mmu.S:989:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:990:6: error: unknown token in expression sub %eax, %ebx ^ jitc_mmu.S:992:7: error: unknown token in expression rol %rdx, 8 ^ jitc_mmu.S:993:8: error: unknown token in expression push %rax ^ jitc_mmu.S:994:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:995:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:996:9: error: unknown token in expression movzx %esi, %dl ^ jitc_mmu.S:997:7: error: unknown token in expression mov %edx, 1 ^ jitc_mmu.S:999:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1000:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1001:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:1002:7: error: unknown token in expression dec %rbx ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :4:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1017:2: note: while in macro instantiation mmu_prologue ^ :5:7: error: unknown token in expression mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1017:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1018:6: error: unknown token in expression and %eax, 0xfffffff0 ^ jitc_mmu.S:1019:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1023:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1026:6: error: unknown token in expression mov %rbx, [%rdx] ^ jitc_mmu.S:1027:6: error: unknown token in expression mov %rsi, [%rdx+8] ^ jitc_mmu.S:1029:8: error: unknown token in expression bswap %rbx ^ jitc_mmu.S:1030:8: error: unknown token in expression bswap %rsi ^ jitc_mmu.S:1032:7: error: unknown token in expression mov [%rax+8], %rbx ^ jitc_mmu.S:1033:7: error: unknown token in expression mov [%rax], %rsi ^ jitc_mmu.S:1036:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1037:6: error: unknown token in expression mov %rsi, %rdx ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :4:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1041:2: note: while in macro instantiation mmu_prologue ^ :5:7: error: unknown token in expression mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1041:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1042:6: error: unknown token in expression and %eax, 0xfffffff0 ^ jitc_mmu.S:1043:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1047:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1050:10: error: unknown token in expression movaps [%rax], %xmm0 ^ jitc_mmu.S:1053:10: error: unknown token in expression movaps [%rdx], %xmm0 ^ jitc_mmu.S:1054:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1055:6: error: unknown token in expression mov %rsi, %rdx ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :4:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1070:2: note: while in macro instantiation mmu_prologue ^ :5:7: error: unknown token in expression mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1070:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1075:8: error: unknown token in expression movzx %edx, byte ptr [%rax] ^ jitc_mmu.S:1078:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1079:6: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1081:8: error: unknown token in expression movzx %edx, %al ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :4:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1096:2: note: while in macro instantiation mmu_prologue ^ :5:7: error: unknown token in expression mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1096:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1097:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:1098:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:1099:6: error: unknown token in expression cmp %ebx, 4095 ^ jitc_mmu.S:1105:8: error: unknown token in expression movzx %edx, word ptr [%rax] ^ jitc_mmu.S:1106:6: error: unknown token in expression rol %dx, 8 ^ jitc_mmu.S:1109:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1110:6: error: unknown token in expression mov %esi, 2 ^ jitc_mmu.S:1112:6: error: unknown token in expression rol %ax, 8 ^ jitc_mmu.S:1113:8: error: unknown token in expression movzx %edx, %ax ^ jitc_mmu.S:1117:7: error: unknown token in expression push %rax ^ jitc_mmu.S:1121:6: error: unknown token in expression xor %edx, %edx ^ jitc_mmu.S:1122:6: error: unknown token in expression mov %dh, [%rax] ^ jitc_mmu.S:1124:6: error: unknown token in expression mov %eax, [%rsp] ^ jitc_mmu.S:1125:7: error: unknown token in expression mov [%rsp], %edx ^ jitc_mmu.S:1126:6: error: unknown token in expression inc %eax ^ jitc_mmu.S:1129:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1131:6: error: unknown token in expression mov %dl, [%rax] ^ jitc_mmu.S:1135:7: error: unknown token in expression push %rdi ^ jitc_mmu.S:1136:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1137:6: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1139:6: error: unknown token in expression xor %edx, %edx ^ jitc_mmu.S:1140:6: error: unknown token in expression mov %dh, %al ^ jitc_mmu.S:1141:6: error: unknown token in expression pop %rdi ^ jitc_mmu.S:1144:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1145:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1146:6: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1148:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1149:6: error: unknown token in expression mov %dl, %al ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :4:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1164:2: note: while in macro instantiation mmu_prologue ^ :5:7: error: unknown token in expression mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1164:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1165:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:1166:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:1167:6: error: unknown token in expression cmp %ebx, 4095 ^ jitc_mmu.S:1173:6: error: unknown token in expression mov %cx, [%rax] ^ jitc_mmu.S:1174:6: error: unknown token in expression rol %cx, 8 ^ jitc_mmu.S:1175:8: error: unknown token in expression movsx %edx, %cx ^ jitc_mmu.S:1178:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1179:6: error: unknown token in expression mov %esi, 2 ^ jitc_mmu.S:1181:6: error: unknown token in expression rol %ax, 8 ^ jitc_mmu.S:1182:8: error: unknown token in expression movsx %edx, %ax ^ jitc_mmu.S:1186:7: error: unknown token in expression push %rax ^ jitc_mmu.S:1190:6: error: unknown token in expression xor %ecx, %ecx ^ jitc_mmu.S:1191:6: error: unknown token in expression mov %ch, [%rax] ^ jitc_mmu.S:1193:6: error: unknown token in expression mov %eax, [%rsp] ^ jitc_mmu.S:1194:7: error: unknown token in expression mov [%rsp], %ecx ^ jitc_mmu.S:1195:6: error: unknown token in expression inc %eax ^ jitc_mmu.S:1198:6: error: unknown token in expression pop %rcx ^ jitc_mmu.S:1200:6: error: unknown token in expression mov %cl, [%rax] ^ jitc_mmu.S:1201:8: error: unknown token in expression movsx %edx, %cx ^ jitc_mmu.S:1205:7: error: unknown token in expression push %rdi ^ jitc_mmu.S:1206:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1207:6: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1209:6: error: unknown token in expression xor %ecx, %ecx ^ jitc_mmu.S:1210:6: error: unknown token in expression mov %ch, %al ^ jitc_mmu.S:1211:6: error: unknown token in expression pop %rdi ^ jitc_mmu.S:1214:7: error: unknown token in expression push %rcx ^ jitc_mmu.S:1215:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1216:6: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1218:6: error: unknown token in expression pop %rcx ^ jitc_mmu.S:1219:6: error: unknown token in expression mov %cl, %al ^ jitc_mmu.S:1220:8: error: unknown token in expression movsx %edx, %cx ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :4:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1235:2: note: while in macro instantiation mmu_prologue ^ :5:7: error: unknown token in expression mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1235:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1236:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:1237:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:1238:6: error: unknown token in expression cmp %ebx, 4093 ^ jitc_mmu.S:1244:6: error: unknown token in expression mov %edx, [%rax] ^ jitc_mmu.S:1245:8: error: unknown token in expression bswap %edx ^ jitc_mmu.S:1248:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1249:6: error: unknown token in expression mov %esi, 4 ^ jitc_mmu.S:1251:6: error: unknown token in expression mov %edx, %eax ^ jitc_mmu.S:1252:8: error: unknown token in expression bswap %edx ^ jitc_mmu.S:1255:7: error: unknown token in expression push %rax ^ jitc_mmu.S:1256:7: error: unknown token in expression push %rbx ^ jitc_mmu.S:1259:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:1260:6: error: unknown token in expression mov %ecx, 4096 ^ jitc_mmu.S:1262:6: error: unknown token in expression sub %ecx, %ebx ^ jitc_mmu.S:1264:7: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1265:7: error: unknown token in expression mov %dl, [%rax] ^ jitc_mmu.S:1266:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:1267:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:1270:6: error: unknown token in expression mov %eax, [%rsp] ^ jitc_mmu.S:1271:7: error: unknown token in expression mov [%rsp], %edx ^ jitc_mmu.S:1272:6: error: unknown token in expression add %eax, 4 ^ jitc_mmu.S:1273:7: error: unknown token in expression push %rbx ^ jitc_mmu.S:1274:6: error: unknown token in expression and %eax, 0xfffff000 ^ jitc_mmu.S:1277:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:1278:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1280:6: error: unknown token in expression sub %ebx, 4092 ^ jitc_mmu.S:1282:7: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1283:7: error: unknown token in expression mov %dl, [%rax] ^ jitc_mmu.S:1284:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:1285:7: error: unknown token in expression dec %ebx ^ jitc_mmu.S:1290:6: error: unknown token in expression sub %ecx, %ebx ^ jitc_mmu.S:1291:7: error: unknown token in expression push %rdi ^ jitc_mmu.S:1293:7: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1294:8: error: unknown token in expression push %rcx ^ jitc_mmu.S:1295:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1296:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1297:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1298:7: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1300:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1301:7: error: unknown token in expression mov %dl, %al ^ jitc_mmu.S:1302:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1303:7: error: unknown token in expression pop %rcx ^ jitc_mmu.S:1304:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:1305:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:1307:6: error: unknown token in expression pop %rdi ^ jitc_mmu.S:1310:6: error: unknown token in expression sub %ebx, 4092 ^ jitc_mmu.S:1312:7: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1313:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1314:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1315:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1316:7: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1318:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1319:7: error: unknown token in expression mov %dl, %al ^ jitc_mmu.S:1320:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1321:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:1322:7: error: unknown token in expression dec %ebx ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :4:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1337:2: note: while in macro instantiation mmu_prologue ^ :5:7: error: unknown token in expression mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1337:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1338:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:1339:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:1340:6: error: unknown token in expression cmp %ebx, 4089 ^ jitc_mmu.S:1346:6: error: unknown token in expression mov %rdx, [%rax] ^ jitc_mmu.S:1347:8: error: unknown token in expression bswap %rdx ^ jitc_mmu.S:1350:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1352:6: error: unknown token in expression mov %rdx, %rax ^ jitc_mmu.S:1353:8: error: unknown token in expression bswap %rdx ^ jitc_mmu.S:1357:7: error: unknown token in expression push %rax ^ jitc_mmu.S:1358:7: error: unknown token in expression push %rbx ^ jitc_mmu.S:1361:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:1362:6: error: unknown token in expression mov %r12d, 4096 ^ jitc_mmu.S:1364:6: error: unknown token in expression sub %r12d, %ebx ^ jitc_mmu.S:1366:7: error: unknown token in expression shl %rdx, 8 ^ jitc_mmu.S:1367:7: error: unknown token in expression mov %dl, [%rax] ^ jitc_mmu.S:1368:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:1369:7: error: unknown token in expression dec %r12d ^ jitc_mmu.S:1372:6: error: unknown token in expression pop %rax ^ jitc_mmu.S:1373:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1374:6: error: unknown token in expression add %eax, 8 ^ jitc_mmu.S:1375:7: error: unknown token in expression push %rbx ^ jitc_mmu.S:1376:6: error: unknown token in expression and %eax, 0xfffff000 ^ jitc_mmu.S:1379:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:1380:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1382:6: error: unknown token in expression sub %ebx, 4088 ^ jitc_mmu.S:1384:7: error: unknown token in expression shl %rdx, 8 ^ jitc_mmu.S:1385:7: error: unknown token in expression mov %dl, [%rax] ^ jitc_mmu.S:1386:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:1387:7: error: unknown token in expression dec %ebx ^ jitc_mmu.S:1392:6: error: unknown token in expression sub %r12d, %ebx ^ jitc_mmu.S:1393:7: error: unknown token in expression push %rdi ^ jitc_mmu.S:1395:7: error: unknown token in expression shl %rdx, 8 ^ jitc_mmu.S:1396:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1397:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1398:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1399:7: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1401:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1402:7: error: unknown token in expression mov %dl, %al ^ jitc_mmu.S:1403:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1404:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:1405:7: error: unknown token in expression dec %r12d ^ jitc_mmu.S:1407:6: error: unknown token in expression pop %rdi ^ jitc_mmu.S:1410:6: error: unknown token in expression sub %ebx, 4088 ^ jitc_mmu.S:1412:7: error: unknown token in expression shl %rdx, 8 ^ jitc_mmu.S:1413:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1414:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1415:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1416:7: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1418:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1419:7: error: unknown token in expression mov %dl, %al ^ jitc_mmu.S:1420:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1421:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:1422:7: error: unknown token in expression dec %ebx ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :4:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1437:2: note: while in macro instantiation mmu_prologue ^ :5:7: error: unknown token in expression mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1437:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1438:6: error: unknown token in expression and %eax, 0xfffffff0 ^ jitc_mmu.S:1439:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1443:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1446:6: error: unknown token in expression mov %rbx, [%rax] ^ jitc_mmu.S:1447:6: error: unknown token in expression mov %rsi, [%rax+8] ^ jitc_mmu.S:1449:8: error: unknown token in expression bswap %rbx ^ jitc_mmu.S:1450:8: error: unknown token in expression bswap %rsi ^ jitc_mmu.S:1452:7: error: unknown token in expression mov [%rdx+8], %rbx ^ jitc_mmu.S:1453:7: error: unknown token in expression mov [%rdx], %rsi ^ jitc_mmu.S:1456:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1457:6: error: unknown token in expression mov %rsi, %rdx ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :4:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1461:2: note: while in macro instantiation mmu_prologue ^ :5:7: error: unknown token in expression mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1461:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1462:6: error: unknown token in expression and %eax, 0xfffffff0 ^ jitc_mmu.S:1463:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1467:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1470:9: error: unknown token in expression movaps %xmm0, [%rax] ^ jitc_mmu.S:1472:6: error: unknown token in expression mov %rbx, [%rax] ^ jitc_mmu.S:1473:6: error: unknown token in expression mov %rsi, [%rax+8] ^ jitc_mmu.S:1475:8: error: unknown token in expression bswap %rbx ^ jitc_mmu.S:1476:8: error: unknown token in expression bswap %rsi ^ jitc_mmu.S:1478:7: error: unknown token in expression mov [%rdx+8], %rbx ^ jitc_mmu.S:1479:7: error: unknown token in expression mov [%rdx], %rsi ^ jitc_mmu.S:1483:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1484:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1485:6: error: unknown token in expression mov %rsi, %rdx ^ jitc_mmu.S:1487:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1489:9: error: unknown token in expression movaps %xmm0, [%rdx] ^ jitc_mmu.S:1491:6: error: unknown token in expression mov %rax, [%rdx] ^ jitc_mmu.S:1492:6: error: unknown token in expression mov %rsi, [%rdx+8] ^ jitc_mmu.S:1494:8: error: unknown token in expression bswap %rax ^ jitc_mmu.S:1495:8: error: unknown token in expression bswap %rsi ^ jitc_mmu.S:1497:7: error: unknown token in expression mov [%rdx+8], %rsi ^ jitc_mmu.S:1498:7: error: unknown token in expression mov [%rdx], %rax ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :4:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1513:2: note: while in macro instantiation mmu_prologue ^ :5:7: error: unknown token in expression mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1513:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1514:6: error: unknown token in expression mov %r8d, 1 ^ jitc_mmu.S:1517:7: error: unknown token in expression dec %r8d ^ jitc_mmu.S:1519:8: error: unknown token in expression mov %edx, [%rdi+gpr+4*%rbx] ^ jitc_mmu.S:1520:8: error: unknown token in expression inc %ebx ^ jitc_mmu.S:1521:8: error: unknown token in expression mov %r8d, 4 ^ jitc_mmu.S:1522:8: error: unknown token in expression and %ebx, 0x1f ^ jitc_mmu.S:1524:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1525:8: error: unknown token in expression push %rcx ^ jitc_mmu.S:1526:8: error: unknown token in expression push %rbx ^ jitc_mmu.S:1527:8: error: unknown token in expression push %r8 ^ jitc_mmu.S:1528:8: error: unknown token in expression push %rdi ^ jitc_mmu.S:1529:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1532:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1533:7: error: unknown token in expression mov %ecx, %edx ^ jitc_mmu.S:1535:7: error: unknown token in expression shr %ecx, 24 ^ jitc_mmu.S:1536:8: error: unknown token in expression mov [%rax], %cl ^ jitc_mmu.S:1538:7: error: unknown token in expression pop %rdi ^ jitc_mmu.S:1539:7: error: unknown token in expression pop %r8 ^ jitc_mmu.S:1540:7: error: unknown token in expression pop %rbx ^ jitc_mmu.S:1541:7: error: unknown token in expression pop %rcx ^ jitc_mmu.S:1542:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1543:7: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1544:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:1545:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:1550:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1551:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1552:6: error: unknown token in expression shr %edx, 24 ^ jitc_mmu.S:1553:6: error: unknown token in expression mov %esi, %edx ^ jitc_mmu.S:1554:6: error: unknown token in expression mov %edx, 1 ^ jitc_mmu.S:1556:6: error: unknown token in expression pop %rdx ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :4:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1570:2: note: while in macro instantiation mmu_prologue ^ :5:7: error: unknown token in expression mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1570:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1571:6: error: unknown token in expression mov %r8d, 4 ^ jitc_mmu.S:1573:6: error: unknown token in expression or %r8d, %r8d ^ jitc_mmu.S:1575:9: error: unknown token in expression mov [%rdi+gpr+4*%rbx], %edx ^ jitc_mmu.S:1576:8: error: unknown token in expression inc %ebx ^ jitc_mmu.S:1577:8: error: unknown token in expression mov %r8d, 4 ^ jitc_mmu.S:1578:8: error: unknown token in expression and %ebx, 0x1f ^ jitc_mmu.S:1579:8: error: unknown token in expression xor %edx, %edx ^ jitc_mmu.S:1582:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1583:8: error: unknown token in expression push %rcx ^ jitc_mmu.S:1584:8: error: unknown token in expression push %rbx ^ jitc_mmu.S:1585:8: error: unknown token in expression push %rdi ^ jitc_mmu.S:1586:8: error: unknown token in expression push %r8 ^ jitc_mmu.S:1587:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1590:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1592:7: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1593:7: error: unknown token in expression mov %dl, byte ptr [%rax] ^ jitc_mmu.S:1595:7: error: unknown token in expression pop %r8 ^ jitc_mmu.S:1596:7: error: unknown token in expression pop %rdi ^ jitc_mmu.S:1597:7: error: unknown token in expression pop %rbx ^ jitc_mmu.S:1598:7: error: unknown token in expression pop %rcx ^ jitc_mmu.S:1599:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1601:7: error: unknown token in expression dec %r8d ^ jitc_mmu.S:1602:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:1603:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:1606:5: error: unknown token in expression or %r8d, %r8d ^ jitc_mmu.S:1609:8: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1610:8: error: unknown token in expression dec %r8d ^ jitc_mmu.S:1614:7: error: unknown token in expression mov [%rdi+gpr+4*%rbx], %edx ^ jitc_mmu.S:1618:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1619:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1620:6: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1622:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1623:6: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1624:6: error: unknown token in expression mov %dl, %al ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :4:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1633:2: note: while in macro instantiation mmu_prologue ^ :5:7: error: unknown token in expression mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1633:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1635:6: error: unknown token in expression add %eax, 1 # FIXME: WTF??? ^ jitc_mmu.S:1638:6: error: unknown token in expression sub %eax, [gMemory] ^ jitc_mmu.S:1640:6: error: unknown token in expression mov %rdi, [%rdi+jitc] ^ jitc_mmu.S:1641:6: error: unknown token in expression mov %rcx, [%rdi+clientPages] ^ jitc_mmu.S:1642:6: error: unknown token in expression shr %eax, 12 ^ jitc_mmu.S:1643:17: error: unknown token in expression cmp qword ptr [%rcx+%rax*8], 0 ^ jitc_mmu.S:1649:6: error: unknown token in expression mov %rsi, [%rcx+%rax*8] ^ *** [jitc_mmu.o] Error code 1 make[4]: stopped in /data/scratch/emulators/pearpc/work/pearpc-0.5/src/cpu/cpu_jitc_x86_64 2 errors make[4]: stopped in /data/scratch/emulators/pearpc/work/pearpc-0.5/src/cpu/cpu_jitc_x86_64 *** [all-recursive] Error code 1 make[3]: stopped in /data/scratch/emulators/pearpc/work/pearpc-0.5/src/cpu 1 error make[3]: stopped in /data/scratch/emulators/pearpc/work/pearpc-0.5/src/cpu *** [all-recursive] Error code 1 make[2]: stopped in /data/scratch/emulators/pearpc/work/pearpc-0.5/src 1 error make[2]: stopped in /data/scratch/emulators/pearpc/work/pearpc-0.5/src *** [all-recursive] Error code 1 make[1]: stopped in /data/scratch/emulators/pearpc/work/pearpc-0.5 1 error make[1]: stopped in /data/scratch/emulators/pearpc/work/pearpc-0.5 *** [all] Error code 2 make: stopped in /data/scratch/emulators/pearpc/work/pearpc-0.5 1 error make: stopped in /data/scratch/emulators/pearpc/work/pearpc-0.5 *** Error code 2 Stop. make[1]: stopped in /data/pkgsrc/emulators/pearpc *** Error code 1 Stop. make: stopped in /data/pkgsrc/emulators/pearpc