DC-Build-Header: pearpc 0.5.dfsg-2 / 2013-07-17 06:19:06 +0000 DC-Task: source:pearpc version:0.5.dfsg-2 architecture:any chroot:unstable esttime:93 logfile:/tmp/pearpc_0.5.dfsg-2_unstable_clang.log modes:binary-only:clang DC-Sbuild-call: su user -c 'sbuild -n --apt-update -d unstable -v --chroot-setup-commands=/tmp/switch-to-clang --append-to-version "clang1" --maintainer "Lucas Nussbaum " --uploader "Lucas Nussbaum " pearpc_0.5.dfsg-2' sbuild (Debian sbuild) 0.63.2 (18 Aug 2012) on ip-10-232-32-134.ec2.internal ╔══════════════════════════════════════════════════════════════════════════════╗ ║ pearpc 0.5.dfsg-2clang1 (amd64) 17 Jul 2013 06:19 ║ ╚══════════════════════════════════════════════════════════════════════════════╝ Package: pearpc Version: 0.5.dfsg-2clang1 Source Version: 0.5.dfsg-2 Distribution: unstable Machine Architecture: amd64 Host Architecture: amd64 Build Architecture: amd64 I: NOTICE: Log filtering will replace 'build/pearpc-NHdl0U/pearpc-0.5.dfsg' with '«PKGBUILDDIR»' I: NOTICE: Log filtering will replace 'build/pearpc-NHdl0U' with '«BUILDDIR»' I: NOTICE: Log filtering will replace 'var/lib/schroot/mount/unstable-amd64-sbuild-8b2ae0a4-94d8-4571-b42b-f59b3a6afcd8' with '«CHROOT»' ┌──────────────────────────────────────────────────────────────────────────────┐ │ Update chroot │ └──────────────────────────────────────────────────────────────────────────────┘ Get:1 http://localhost:9999 unstable InRelease [204 kB] Get:2 http://localhost:9999 unstable/main Sources/DiffIndex [7876 B] Get:3 http://localhost:9999 unstable/main amd64 Packages/DiffIndex [7876 B] Get:4 http://localhost:9999 unstable/main Translation-en/DiffIndex [7876 B] Get:5 http://localhost:9999 unstable/main 2013-07-13-2032.15.pdiff [23.1 kB] Get:6 http://localhost:9999 unstable/main amd64 2013-07-13-2032.15.pdiff [16.9 kB] Get:7 http://localhost:9999 unstable/main 2013-07-13-2032.15.pdiff [23.1 kB] Get:8 http://localhost:9999 unstable/main 2013-07-13-2032.15.pdiff [1809 B] Get:9 http://localhost:9999 unstable/main amd64 2013-07-13-2032.15.pdiff [16.9 kB] Get:10 http://localhost:9999 unstable/main 2013-07-14-0231.07.pdiff [12.9 kB] Get:11 http://localhost:9999 unstable/main 2013-07-13-2032.15.pdiff [1809 B] Get:12 http://localhost:9999 unstable/main amd64 2013-07-14-0231.07.pdiff [14.9 kB] Get:13 http://localhost:9999 unstable/main 2013-07-14-0231.07.pdiff [12.9 kB] Get:14 http://localhost:9999 unstable/main 2013-07-14-0231.07.pdiff [1384 B] Get:15 http://localhost:9999 unstable/main amd64 2013-07-14-0231.07.pdiff [14.9 kB] Get:16 http://localhost:9999 unstable/main 2013-07-14-0832.16.pdiff [4670 B] Get:17 http://localhost:9999 unstable/main 2013-07-14-0231.07.pdiff [1384 B] Get:18 http://localhost:9999 unstable/main amd64 2013-07-14-0832.16.pdiff [1624 B] Get:19 http://localhost:9999 unstable/main 2013-07-14-0832.16.pdiff [4670 B] Get:20 http://localhost:9999 unstable/main 2013-07-14-0832.16.pdiff [337 B] Get:21 http://localhost:9999 unstable/main amd64 2013-07-14-0832.16.pdiff [1624 B] Get:22 http://localhost:9999 unstable/main 2013-07-14-1431.18.pdiff [11.4 kB] Get:23 http://localhost:9999 unstable/main 2013-07-14-0832.16.pdiff [337 B] Get:24 http://localhost:9999 unstable/main amd64 2013-07-14-1431.18.pdiff [8223 B] Get:25 http://localhost:9999 unstable/main 2013-07-14-1431.18.pdiff [11.4 kB] Get:26 http://localhost:9999 unstable/main 2013-07-14-1431.18.pdiff [887 B] Get:27 http://localhost:9999 unstable/main amd64 2013-07-14-1431.18.pdiff [8223 B] Get:28 http://localhost:9999 unstable/main 2013-07-14-2031.21.pdiff [9038 B] Get:29 http://localhost:9999 unstable/main 2013-07-14-1431.18.pdiff [887 B] Get:30 http://localhost:9999 unstable/main amd64 2013-07-14-2031.21.pdiff [9955 B] Get:31 http://localhost:9999 unstable/main 2013-07-14-2031.21.pdiff [9038 B] Get:32 http://localhost:9999 unstable/main 2013-07-14-2031.21.pdiff [2736 B] Get:33 http://localhost:9999 unstable/main amd64 2013-07-14-2031.21.pdiff [9955 B] Get:34 http://localhost:9999 unstable/main 2013-07-15-0229.01.pdiff [9715 B] Get:35 http://localhost:9999 unstable/main 2013-07-14-2031.21.pdiff [2736 B] Get:36 http://localhost:9999 unstable/main amd64 2013-07-15-0229.01.pdiff [12.7 kB] Get:37 http://localhost:9999 unstable/main 2013-07-15-0229.01.pdiff [9715 B] Get:38 http://localhost:9999 unstable/main 2013-07-15-0229.01.pdiff [2239 B] Get:39 http://localhost:9999 unstable/main amd64 2013-07-15-0229.01.pdiff [12.7 kB] Get:40 http://localhost:9999 unstable/main 2013-07-15-0830.19.pdiff [3273 B] Get:41 http://localhost:9999 unstable/main 2013-07-15-0229.01.pdiff [2239 B] Get:42 http://localhost:9999 unstable/main amd64 2013-07-15-0830.19.pdiff [3964 B] Get:43 http://localhost:9999 unstable/main 2013-07-15-0830.19.pdiff [3273 B] Get:44 http://localhost:9999 unstable/main 2013-07-15-0830.19.pdiff [1357 B] Get:45 http://localhost:9999 unstable/main amd64 2013-07-15-0830.19.pdiff [3964 B] Get:46 http://localhost:9999 unstable/main 2013-07-15-1432.36.pdiff [5326 B] Get:47 http://localhost:9999 unstable/main 2013-07-15-0830.19.pdiff [1357 B] Get:48 http://localhost:9999 unstable/main amd64 2013-07-15-1432.36.pdiff [9809 B] Get:49 http://localhost:9999 unstable/main 2013-07-15-1432.36.pdiff [5326 B] Get:50 http://localhost:9999 unstable/main 2013-07-15-1432.36.pdiff [322 B] Get:51 http://localhost:9999 unstable/main amd64 2013-07-15-1432.36.pdiff [9809 B] Get:52 http://localhost:9999 unstable/main 2013-07-15-2031.50.pdiff [12.2 kB] Get:53 http://localhost:9999 unstable/main 2013-07-15-1432.36.pdiff [322 B] Get:54 http://localhost:9999 unstable/main amd64 2013-07-15-2031.50.pdiff [24.4 kB] Get:55 http://localhost:9999 unstable/main 2013-07-15-2031.50.pdiff [12.2 kB] Get:56 http://localhost:9999 unstable/main 2013-07-15-2031.50.pdiff [537 B] Get:57 http://localhost:9999 unstable/main amd64 2013-07-15-2031.50.pdiff [24.4 kB] Get:58 http://localhost:9999 unstable/main 2013-07-16-0233.12.pdiff [14.8 kB] Get:59 http://localhost:9999 unstable/main 2013-07-15-2031.50.pdiff [537 B] Get:60 http://localhost:9999 unstable/main amd64 2013-07-16-0233.12.pdiff [49.5 kB] Get:61 http://localhost:9999 unstable/main 2013-07-16-0233.12.pdiff [14.8 kB] Get:62 http://localhost:9999 unstable/main 2013-07-16-0233.12.pdiff [3247 B] Get:63 http://localhost:9999 unstable/main amd64 2013-07-16-0233.12.pdiff [49.5 kB] Get:64 http://localhost:9999 unstable/main 2013-07-16-0834.41.pdiff [7447 B] Get:65 http://localhost:9999 unstable/main 2013-07-16-0233.12.pdiff [3247 B] Get:66 http://localhost:9999 unstable/main amd64 2013-07-16-0834.41.pdiff [4493 B] Get:67 http://localhost:9999 unstable/main 2013-07-16-0834.41.pdiff [7447 B] Get:68 http://localhost:9999 unstable/main 2013-07-16-0834.41.pdiff [5852 B] Get:69 http://localhost:9999 unstable/main amd64 2013-07-16-0834.41.pdiff [4493 B] Get:70 http://localhost:9999 unstable/main 2013-07-16-1433.54.pdiff [21.2 kB] Get:71 http://localhost:9999 unstable/main 2013-07-16-0834.41.pdiff [5852 B] Get:72 http://localhost:9999 unstable/main amd64 2013-07-16-1433.54.pdiff [19.3 kB] Get:73 http://localhost:9999 unstable/main 2013-07-16-1433.54.pdiff [21.2 kB] Get:74 http://localhost:9999 unstable/main 2013-07-16-1433.54.pdiff [1941 B] Get:75 http://localhost:9999 unstable/main amd64 2013-07-16-1433.54.pdiff [19.3 kB] Get:76 http://localhost:9999 unstable/main 2013-07-16-2046.09.pdiff [19.4 kB] Get:77 http://localhost:9999 unstable/main 2013-07-16-1433.54.pdiff [1941 B] Get:78 http://localhost:9999 unstable/main amd64 2013-07-16-2046.09.pdiff [18.4 kB] Get:79 http://localhost:9999 unstable/main 2013-07-16-2046.09.pdiff [19.4 kB] Get:80 http://localhost:9999 unstable/main 2013-07-16-2046.09.pdiff [465 B] Get:81 http://localhost:9999 unstable/main amd64 2013-07-16-2046.09.pdiff [18.4 kB] Get:82 http://localhost:9999 unstable/main 2013-07-17-0233.52.pdiff [6503 B] Get:83 http://localhost:9999 unstable/main 2013-07-16-2046.09.pdiff [465 B] Get:84 http://localhost:9999 unstable/main amd64 2013-07-17-0233.52.pdiff [10.9 kB] Get:85 http://localhost:9999 unstable/main 2013-07-17-0233.52.pdiff [6503 B] Get:86 http://localhost:9999 unstable/main 2013-07-17-0233.52.pdiff [2433 B] Get:87 http://localhost:9999 unstable/main amd64 2013-07-17-0233.52.pdiff [10.9 kB] Get:88 http://localhost:9999 unstable/main 2013-07-17-0233.52.pdiff [2433 B] Fetched 620 kB in 51s (11.9 kB/s) Reading package lists... Reading package lists... Building dependency tree... Reading state information... The following packages will be upgraded: cpp-4.7 gcc-4.7 gcc-4.7-base initscripts libgcc-4.7-dev linux-libc-dev sysv-rc sysvinit sysvinit-utils 9 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. Need to get 15.1 MB of archives. After this operation, 43.0 kB of additional disk space will be used. Get:1 http://localhost:9999/debian/ unstable/main sysvinit amd64 2.88dsf-43 [134 kB] Get:2 http://localhost:9999/debian/ unstable/main sysv-rc all 2.88dsf-43 [80.5 kB] Get:3 http://localhost:9999/debian/ unstable/main sysvinit-utils amd64 2.88dsf-43 [103 kB] Get:4 http://localhost:9999/debian/ unstable/main initscripts amd64 2.88dsf-43 [87.2 kB] Get:5 http://localhost:9999/debian/ unstable/main gcc-4.7 amd64 4.7.3-6 [5819 kB] Get:6 http://localhost:9999/debian/ unstable/main cpp-4.7 amd64 4.7.3-6 [5385 kB] Get:7 http://localhost:9999/debian/ unstable/main libgcc-4.7-dev amd64 4.7.3-6 [2465 kB] Get:8 http://localhost:9999/debian/ unstable/main gcc-4.7-base amd64 4.7.3-6 [149 kB] Get:9 http://localhost:9999/debian/ unstable/main linux-libc-dev amd64 3.10.1-1 [869 kB] debconf: delaying package configuration, since apt-utils is not installed Fetched 15.1 MB in 0s (25.3 MB/s) (Reading database ... 13844 files and directories currently installed.) Preparing to replace sysvinit 2.88dsf-41 (using .../sysvinit_2.88dsf-43_amd64.deb) ... Unpacking replacement sysvinit ... Setting up sysvinit (2.88dsf-43) ... Not restarting sysvinit (Reading database ... 13844 files and directories currently installed.) Preparing to replace sysv-rc 2.88dsf-41 (using .../sysv-rc_2.88dsf-43_all.deb) ... Unpacking replacement sysv-rc ... Preparing to replace sysvinit-utils 2.88dsf-41 (using .../sysvinit-utils_2.88dsf-43_amd64.deb) ... Unpacking replacement sysvinit-utils ... Setting up sysvinit-utils (2.88dsf-43) ... Setting up sysv-rc (2.88dsf-43) ... (Reading database ... 13844 files and directories currently installed.) Preparing to replace initscripts 2.88dsf-41 (using .../initscripts_2.88dsf-43_amd64.deb) ... Removing unmodified and obsolete conffile /etc/init.d/mtab.sh ... Unpacking replacement initscripts ... Setting up initscripts (2.88dsf-43) ... Installing new version of config file /etc/init.d/bootmisc.sh ... Installing new version of config file /etc/init.d/checkfs.sh ... Installing new version of config file /etc/init.d/checkroot.sh ... Installing new version of config file /etc/init.d/checkroot-bootclean.sh ... Installing new version of config file /etc/init.d/mountdevsubfs.sh ... Installing new version of config file /etc/init.d/mountkernfs.sh ... Installing new version of config file /etc/init.d/rmnologin ... Installing new version of config file /etc/network/if-up.d/mountnfs ... (Reading database ... 13843 files and directories currently installed.) Preparing to replace gcc-4.7 4.7.3-5 (using .../gcc-4.7_4.7.3-6_amd64.deb) ... Unpacking replacement gcc-4.7 ... Preparing to replace cpp-4.7 4.7.3-5 (using .../cpp-4.7_4.7.3-6_amd64.deb) ... Unpacking replacement cpp-4.7 ... Preparing to replace libgcc-4.7-dev:amd64 4.7.3-5 (using .../libgcc-4.7-dev_4.7.3-6_amd64.deb) ... Unpacking replacement libgcc-4.7-dev:amd64 ... Preparing to replace gcc-4.7-base:amd64 4.7.3-5 (using .../gcc-4.7-base_4.7.3-6_amd64.deb) ... Unpacking replacement gcc-4.7-base:amd64 ... Preparing to replace linux-libc-dev:amd64 3.9.8-1 (using .../linux-libc-dev_3.10.1-1_amd64.deb) ... Unpacking replacement linux-libc-dev:amd64 ... Setting up gcc-4.7-base:amd64 (4.7.3-6) ... Setting up cpp-4.7 (4.7.3-6) ... Setting up libgcc-4.7-dev:amd64 (4.7.3-6) ... Setting up gcc-4.7 (4.7.3-6) ... Setting up linux-libc-dev:amd64 (3.10.1-1) ... ┌──────────────────────────────────────────────────────────────────────────────┐ │ Fetch source files │ └──────────────────────────────────────────────────────────────────────────────┘ Check APT ───────── Checking available source versions... Download source files with APT ────────────────────────────── Reading package lists... Building dependency tree... Reading state information... Need to get 815 kB of source archives. Get:1 http://localhost:9999/debian/ unstable/main pearpc 0.5.dfsg-2 (dsc) [1346 B] Get:2 http://localhost:9999/debian/ unstable/main pearpc 0.5.dfsg-2 (tar) [806 kB] Get:3 http://localhost:9999/debian/ unstable/main pearpc 0.5.dfsg-2 (diff) [7706 B] Fetched 815 kB in 0s (2906 kB/s) Download complete and in download only mode Check arch ────────── ┌──────────────────────────────────────────────────────────────────────────────┐ │ Chroot Setup Commands │ └──────────────────────────────────────────────────────────────────────────────┘ /tmp/switch-to-clang ──────────────────── + echo 'Entering customization script...' Entering customization script... + echo 'Install of clang' Install of clang + apt-get update Hit http://localhost:9999 unstable InRelease Hit http://localhost:9999 unstable/main Sources/DiffIndex Hit http://localhost:9999 unstable/main amd64 Packages/DiffIndex Hit http://localhost:9999 unstable/main Translation-en/DiffIndex Reading package lists... + apt-get install --yes --no-install-recommends --force-yes clang-3.3 Reading package lists... Building dependency tree... Reading state information... The following extra packages will be installed: libclang-common-3.3-dev libclang1-3.3 libffi6 libllvm3.3 libobjc-4.7-dev libobjc4 libstdc++6-4.7-dev Suggested packages: libstdc++6-4.7-doc Recommended packages: llvm-3.3-dev python The following NEW packages will be installed: clang-3.3 libclang-common-3.3-dev libclang1-3.3 libffi6 libllvm3.3 libobjc-4.7-dev libobjc4 libstdc++6-4.7-dev 0 upgraded, 8 newly installed, 0 to remove and 0 not upgraded. Need to get 27.2 MB of archives. After this operation, 80.8 MB of additional disk space will be used. Get:1 http://localhost:9999/debian/ unstable/main libffi6 amd64 3.0.13-4 [21.6 kB] Get:2 http://localhost:9999/debian/ unstable/main libllvm3.3 amd64 1:3.3-3 [8575 kB] Get:3 http://localhost:9999/debian/ unstable/main libobjc4 amd64 4.8.1-6 [160 kB] Get:4 http://localhost:9999/debian/ unstable/main libstdc++6-4.7-dev amd64 4.7.3-6 [1694 kB] Get:5 http://localhost:9999/debian/ unstable/main libobjc-4.7-dev amd64 4.7.3-6 [719 kB] Get:6 http://localhost:9999/debian/ unstable/main libclang-common-3.3-dev amd64 1:3.3-3 [574 kB] Get:7 http://localhost:9999/debian/ unstable/main libclang1-3.3 amd64 1:3.3-3 [4579 kB] Get:8 http://localhost:9999/debian/ unstable/main clang-3.3 amd64 1:3.3-3 [10.9 MB] debconf: delaying package configuration, since apt-utils is not installed Fetched 27.2 MB in 1s (25.7 MB/s) Selecting previously unselected package libffi6:amd64. (Reading database ... 13846 files and directories currently installed.) Unpacking libffi6:amd64 (from .../libffi6_3.0.13-4_amd64.deb) ... Selecting previously unselected package libllvm3.3:amd64. Unpacking libllvm3.3:amd64 (from .../libllvm3.3_1%3a3.3-3_amd64.deb) ... Selecting previously unselected package libobjc4:amd64. Unpacking libobjc4:amd64 (from .../libobjc4_4.8.1-6_amd64.deb) ... Selecting previously unselected package libstdc++6-4.7-dev:amd64. Unpacking libstdc++6-4.7-dev:amd64 (from .../libstdc++6-4.7-dev_4.7.3-6_amd64.deb) ... Selecting previously unselected package libobjc-4.7-dev:amd64. Unpacking libobjc-4.7-dev:amd64 (from .../libobjc-4.7-dev_4.7.3-6_amd64.deb) ... Selecting previously unselected package libclang-common-3.3-dev. Unpacking libclang-common-3.3-dev (from .../libclang-common-3.3-dev_1%3a3.3-3_amd64.deb) ... Selecting previously unselected package libclang1-3.3. Unpacking libclang1-3.3 (from .../libclang1-3.3_1%3a3.3-3_amd64.deb) ... Selecting previously unselected package clang-3.3. Unpacking clang-3.3 (from .../clang-3.3_1%3a3.3-3_amd64.deb) ... Setting up libffi6:amd64 (3.0.13-4) ... Setting up libllvm3.3:amd64 (1:3.3-3) ... Setting up libobjc4:amd64 (4.8.1-6) ... Setting up libstdc++6-4.7-dev:amd64 (4.7.3-6) ... Setting up libobjc-4.7-dev:amd64 (4.7.3-6) ... Setting up libclang-common-3.3-dev (1:3.3-3) ... Setting up libclang1-3.3 (1:3.3-3) ... Setting up clang-3.3 (1:3.3-3) ... Processing triggers for libc-bin ... + echo 'Replace gcc, g++ & cpp by clang' Replace gcc, g++ & cpp by clang + VERSIONS='4.6 4.7 4.8' + cd /usr/bin + for VERSION in '$VERSIONS' + rm -f g++-4.6 gcc-4.6 cpp-4.6 + ln -s clang++ g++-4.6 + ln -s clang gcc-4.6 + ln -s clang cpp-4.6 + for VERSION in '$VERSIONS' + rm -f g++-4.7 gcc-4.7 cpp-4.7 + ln -s clang++ g++-4.7 + ln -s clang gcc-4.7 + ln -s clang cpp-4.7 + for VERSION in '$VERSIONS' + rm -f g++-4.8 gcc-4.8 cpp-4.8 + ln -s clang++ g++-4.8 + ln -s clang gcc-4.8 + ln -s clang cpp-4.8 + cd - /«BUILDDIR» + echo 'Block the installation of new gcc version' Block the installation of new gcc version + dpkg --set-selections + echo 'gcc-4.6 hold' + dpkg --set-selections + echo 'cpp-4.6 hold' + dpkg --set-selections + echo 'g++-4.6 hold' + dpkg --set-selections + echo 'gcc-4.7 hold' + dpkg --set-selections + echo 'cpp-4.7 hold' + dpkg --set-selections + echo 'g++-4.7 hold' + dpkg --set-selections + echo 'gcc-4.8 hold' + dpkg --set-selections + echo 'cpp-4.8 hold' + dpkg --set-selections + echo 'g++-4.8 hold' + echo 'Check if gcc, g++ & cpp are actually clang' Check if gcc, g++ & cpp are actually clang + grep clang + gcc --version + grep clang + cpp --version + grep clang + g++ --version I: Finished running '/tmp/switch-to-clang'. Finished processing commands. ──────────────────────────────────────────────────────────────────────────────── Merged Build-Depends: build-essential, fakeroot Filtered Build-Depends: build-essential, fakeroot dpkg-deb: building package `sbuild-build-depends-core-dummy' in `/«BUILDDIR»/resolver-jYCJ6F/apt_archive/sbuild-build-depends-core-dummy.deb'. OK Reading package lists... ┌──────────────────────────────────────────────────────────────────────────────┐ │ Install core build dependencies (apt-based resolver) │ └──────────────────────────────────────────────────────────────────────────────┘ Installing build dependencies Reading package lists... Building dependency tree... Reading state information... The following NEW packages will be installed: sbuild-build-depends-core-dummy debconf: delaying package configuration, since apt-utils is not installed 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. Need to get 0 B/710 B of archives. After this operation, 0 B of additional disk space will be used. Selecting previously unselected package sbuild-build-depends-core-dummy. (Reading database ... 14701 files and directories currently installed.) Unpacking sbuild-build-depends-core-dummy (from .../sbuild-build-depends-core-dummy.deb) ... Setting up sbuild-build-depends-core-dummy (0.invalid.0) ... Merged Build-Depends: base-files, base-passwd, bash, bsdutils, coreutils, dash, debianutils, diffutils, dpkg, e2fsprogs, findutils, grep, gzip, hostname, libc-bin, login, mount, ncurses-base, ncurses-bin, perl-base, sed, sysvinit, sysvinit-utils, tar, util-linux, libc6-dev | libc-dev, gcc (>= 4:4.4.3), g++ (>= 4:4.4.3), make, dpkg-dev (>= 1.13.5), debhelper (>= 7.0.50~), nasm, libaa1-dev, libgpmg1-dev, libsvga1-dev, libncurses5-dev, libxext-dev, libasound2-dev, libsdl1.2-dev, libx11-dev, autotools-dev Filtered Build-Depends: base-files, base-passwd, bash, bsdutils, coreutils, dash, debianutils, diffutils, dpkg, e2fsprogs, findutils, grep, gzip, hostname, libc-bin, login, mount, ncurses-base, ncurses-bin, perl-base, sed, sysvinit, sysvinit-utils, tar, util-linux, libc6-dev, gcc (>= 4:4.4.3), g++ (>= 4:4.4.3), make, dpkg-dev (>= 1.13.5), debhelper (>= 7.0.50~), nasm, libaa1-dev, libgpmg1-dev, libsvga1-dev, libncurses5-dev, libxext-dev, libasound2-dev, libsdl1.2-dev, libx11-dev, autotools-dev dpkg-deb: building package `sbuild-build-depends-pearpc-dummy' in `/«BUILDDIR»/resolver-sFUrwa/apt_archive/sbuild-build-depends-pearpc-dummy.deb'. OK Reading package lists... ┌──────────────────────────────────────────────────────────────────────────────┐ │ Install pearpc build dependencies (apt-based resolver) │ └──────────────────────────────────────────────────────────────────────────────┘ Installing build dependencies Reading package lists... Building dependency tree... Reading state information... The following extra packages will be installed: autotools-dev bsdmainutils debhelper file gettext gettext-base groff-base intltool-debian libaa1 libaa1-dev libasound2 libasound2-data libasound2-dev libasprintf0c2 libasyncns0 libavahi-client-dev libavahi-client3 libavahi-common-data libavahi-common-dev libavahi-common3 libcaca-dev libcaca0 libcroco3 libdbus-1-3 libdbus-1-dev libdirectfb-1.2-9 libdirectfb-dev libdirectfb-extra libdrm-dev libdrm-intel1 libdrm-nouveau2 libdrm-radeon1 libdrm2 libelfg0 libflac8 libfreetype6 libfreetype6-dev libgl1-mesa-dev libgl1-mesa-glx libglapi-mesa libglib2.0-0 libglib2.0-bin libglib2.0-data libglib2.0-dev libglu1-mesa libglu1-mesa-dev libgpm-dev libice6 libjpeg8 libjpeg8-dev libjson-c2 libkms1 libmagic1 libncurses5-dev libncursesw5 libogg0 libpciaccess0 libpcre3-dev libpcrecpp0 libpipeline1 libpng12-0 libpng12-dev libpopt0 libpthread-stubs0 libpthread-stubs0-dev libpulse-dev libpulse-mainloop-glib0 libpulse0 libsdl1.2-dev libsdl1.2debian libslang2-dev libsm6 libsndfile1 libsvga1 libsvga1-dev libtinfo-dev libts-0.0-0 libts-dev libunistring0 libvorbis0a libvorbisenc2 libwrap0 libx11-6 libx11-data libx11-dev libx11-xcb-dev libx11-xcb1 libx86-1 libxau-dev libxau6 libxcb-dri2-0 libxcb-dri2-0-dev libxcb-glx0 libxcb-glx0-dev libxcb1 libxcb1-dev libxdamage-dev libxdamage1 libxdmcp-dev libxdmcp6 libxext-dev libxext6 libxfixes-dev libxfixes3 libxi6 libxml2 libxtst6 libxxf86vm-dev libxxf86vm1 man-db mesa-common-dev nasm pkg-config po-debconf tsconf x11-common x11proto-core-dev x11proto-damage-dev x11proto-dri2-dev x11proto-fixes-dev x11proto-gl-dev x11proto-input-dev x11proto-kb-dev x11proto-xext-dev x11proto-xf86vidmode-dev xorg-sgml-doctools xtrans-dev zlib1g-dev Suggested packages: wamerican wordlist whois vacation dh-make gettext-doc groff libasound2-plugins alsa-utils libasound2-doc libglib2.0-doc ncurses-doc pciutils pulseaudio libxcb-doc libxext-doc less www-browser libmail-box-perl Recommended packages: curl wget lynx-cur autopoint libasprintf-dev libgettextpo-dev dbus libgl1-mesa-dri shared-mime-info python tcpd libx11-doc xml-core libmail-sendmail-perl The following NEW packages will be installed: autotools-dev bsdmainutils debhelper file gettext gettext-base groff-base intltool-debian libaa1 libaa1-dev libasound2 libasound2-data libasound2-dev libasprintf0c2 libasyncns0 libavahi-client-dev libavahi-client3 libavahi-common-data libavahi-common-dev libavahi-common3 libcaca-dev libcaca0 libcroco3 libdbus-1-3 libdbus-1-dev libdirectfb-1.2-9 libdirectfb-dev libdirectfb-extra libdrm-dev libdrm-intel1 libdrm-nouveau2 libdrm-radeon1 libdrm2 libelfg0 libflac8 libfreetype6 libfreetype6-dev libgl1-mesa-dev libgl1-mesa-glx libglapi-mesa libglib2.0-0 libglib2.0-bin libglib2.0-data libglib2.0-dev libglu1-mesa libglu1-mesa-dev libgpm-dev libice6 libjpeg8 libjpeg8-dev libjson-c2 libkms1 libmagic1 libncurses5-dev libncursesw5 libogg0 libpciaccess0 libpcre3-dev libpcrecpp0 libpipeline1 libpng12-0 libpng12-dev libpopt0 libpthread-stubs0 libpthread-stubs0-dev libpulse-dev libpulse-mainloop-glib0 libpulse0 libsdl1.2-dev libsdl1.2debian libslang2-dev libsm6 libsndfile1 libsvga1 libsvga1-dev libtinfo-dev libts-0.0-0 libts-dev libunistring0 libvorbis0a libvorbisenc2 libwrap0 libx11-6 libx11-data libx11-dev libx11-xcb-dev libx11-xcb1 libx86-1 libxau-dev libxau6 libxcb-dri2-0 libxcb-dri2-0-dev libxcb-glx0 libxcb-glx0-dev libxcb1 libxcb1-dev libxdamage-dev libxdamage1 libxdmcp-dev libxdmcp6 libxext-dev libxext6 libxfixes-dev libxfixes3 libxi6 libxml2 libxtst6 libxxf86vm-dev libxxf86vm1 man-db mesa-common-dev nasm pkg-config po-debconf sbuild-build-depends-pearpc-dummy tsconf x11-common x11proto-core-dev x11proto-damage-dev x11proto-dri2-dev x11proto-fixes-dev x11proto-gl-dev x11proto-input-dev x11proto-kb-dev x11proto-xext-dev x11proto-xf86vidmode-dev xorg-sgml-doctools xtrans-dev zlib1g-dev 0 upgraded, 129 newly installed, 0 to remove and 0 not upgraded. Need to get 37.5 MB/37.5 MB of archives. After this operation, 110 MB of additional disk space will be used. Get:1 http://localhost:9999/debian/ unstable/main libncursesw5 amd64 5.9+20130608-1 [141 kB] Get:2 http://localhost:9999/debian/ unstable/main libpipeline1 amd64 1.2.4-1 [41.0 kB] Get:3 http://localhost:9999/debian/ unstable/main libpopt0 amd64 1.16-7 [56.4 kB] Get:4 http://localhost:9999/debian/ unstable/main groff-base amd64 1.22.2-3 [747 kB] Get:5 http://localhost:9999/debian/ unstable/main bsdmainutils amd64 9.0.5 [211 kB] Get:6 http://localhost:9999/debian/ unstable/main man-db amd64 2.6.5-2 [976 kB] Get:7 http://localhost:9999/debian/ unstable/main libasprintf0c2 amd64 0.18.3-1 [29.6 kB] Get:8 http://localhost:9999/debian/ unstable/main libmagic1 amd64 1:5.14-2 [216 kB] Get:9 http://localhost:9999/debian/ unstable/main libwrap0 amd64 7.6.q-24 [62.4 kB] Get:10 http://localhost:9999/debian/ unstable/main libxml2 amd64 2.9.1+dfsg1-2 [911 kB] Get:11 http://localhost:9999/debian/ unstable/main libxau6 amd64 1:1.0.8-1 [20.7 kB] Get:12 http://localhost:9999/debian/ unstable/main libxdmcp6 amd64 1:1.1.1-1 [26.3 kB] Get:13 http://localhost:9999/debian/ unstable/main libxcb1 amd64 1.9.1-3 [50.3 kB] Get:14 http://localhost:9999/debian/ unstable/main libx11-data all 2:1.6.0-1 [191 kB] Get:15 http://localhost:9999/debian/ unstable/main libx11-6 amd64 2:1.6.0-1 [919 kB] Get:16 http://localhost:9999/debian/ unstable/main libaa1 amd64 1.4p5-40 [63.7 kB] Get:17 http://localhost:9999/debian/ unstable/main libasound2-data all 1.0.27.2-1 [62.6 kB] Get:18 http://localhost:9999/debian/ unstable/main libasound2 amd64 1.0.27.2-1 [458 kB] Get:19 http://localhost:9999/debian/ unstable/main libasyncns0 amd64 0.8-4 [13.6 kB] Get:20 http://localhost:9999/debian/ unstable/main libavahi-common-data amd64 0.6.31-2 [135 kB] Get:21 http://localhost:9999/debian/ unstable/main libavahi-common3 amd64 0.6.31-2 [54.6 kB] Get:22 http://localhost:9999/debian/ unstable/main libdbus-1-3 amd64 1.6.12-1 [172 kB] Get:23 http://localhost:9999/debian/ unstable/main libavahi-client3 amd64 0.6.31-2 [59.5 kB] Get:24 http://localhost:9999/debian/ unstable/main libcaca0 amd64 0.99.beta18-1 [395 kB] Get:25 http://localhost:9999/debian/ unstable/main libglib2.0-0 amd64 2.36.3-3 [2048 kB] Get:26 http://localhost:9999/debian/ unstable/main libcroco3 amd64 0.6.8-2 [133 kB] Get:27 http://localhost:9999/debian/ unstable/main tsconf all 1.0-11 [13.4 kB] Get:28 http://localhost:9999/debian/ unstable/main libts-0.0-0 amd64 1.0-11 [29.9 kB] Get:29 http://localhost:9999/debian/ unstable/main libdirectfb-1.2-9 amd64 1.2.10.0-5 [1203 kB] Get:30 http://localhost:9999/debian/ unstable/main libfreetype6 amd64 2.4.9-1.1 [451 kB] Get:31 http://localhost:9999/debian/ unstable/main libjpeg8 amd64 8d-1 [134 kB] Get:32 http://localhost:9999/debian/ unstable/main libpng12-0 amd64 1.2.49-4 [190 kB] Get:33 http://localhost:9999/debian/ unstable/main libxext6 amd64 2:1.3.2-1 [56.5 kB] Get:34 http://localhost:9999/debian/ unstable/main libdirectfb-extra amd64 1.2.10.0-5 [36.9 kB] Get:35 http://localhost:9999/debian/ unstable/main libdrm2 amd64 2.4.45-3 [468 kB] Get:36 http://localhost:9999/debian/ unstable/main libpciaccess0 amd64 0.13.1-2 [46.7 kB] Get:37 http://localhost:9999/debian/ unstable/main libdrm-intel1 amd64 2.4.45-3 [506 kB] Get:38 http://localhost:9999/debian/ unstable/main libdrm-nouveau2 amd64 2.4.45-3 [458 kB] Get:39 http://localhost:9999/debian/ unstable/main libdrm-radeon1 amd64 2.4.45-3 [468 kB] Get:40 http://localhost:9999/debian/ unstable/main libogg0 amd64 1.3.1-1 [20.7 kB] Get:41 http://localhost:9999/debian/ unstable/main libflac8 amd64 1.3.0-1 [102 kB] Get:42 http://localhost:9999/debian/ unstable/main libglapi-mesa amd64 9.1.4-1 [49.2 kB] Get:43 http://localhost:9999/debian/ unstable/main libx11-xcb1 amd64 2:1.6.0-1 [153 kB] Get:44 http://localhost:9999/debian/ unstable/main libxcb-dri2-0 amd64 1.9.1-3 [12.9 kB] Get:45 http://localhost:9999/debian/ unstable/main libxcb-glx0 amd64 1.9.1-3 [32.5 kB] Get:46 http://localhost:9999/debian/ unstable/main libxfixes3 amd64 1:5.0.1-1 [22.5 kB] Get:47 http://localhost:9999/debian/ unstable/main libxdamage1 amd64 1:1.1.4-1 [15.1 kB] Get:48 http://localhost:9999/debian/ unstable/main libxxf86vm1 amd64 1:1.1.2-1+deb7u1 [19.5 kB] Get:49 http://localhost:9999/debian/ unstable/main libgl1-mesa-glx amd64 9.1.4-1 [133 kB] Get:50 http://localhost:9999/debian/ unstable/main libglu1-mesa amd64 9.0.0-1 [224 kB] Get:51 http://localhost:9999/debian/ unstable/main x11-common all 1:7.7+3 [284 kB] Get:52 http://localhost:9999/debian/ unstable/main libice6 amd64 2:1.0.8-2 [63.1 kB] Get:53 http://localhost:9999/debian/ unstable/main libkms1 amd64 2.4.45-3 [451 kB] Get:54 http://localhost:9999/debian/ unstable/main libpcrecpp0 amd64 1:8.31-2 [128 kB] Get:55 http://localhost:9999/debian/ unstable/main libjson-c2 amd64 0.11-2 [23.3 kB] Get:56 http://localhost:9999/debian/ unstable/main libsm6 amd64 2:1.2.1-2 [34.2 kB] Get:57 http://localhost:9999/debian/ unstable/main libvorbis0a amd64 1.3.2-1.3 [109 kB] Get:58 http://localhost:9999/debian/ unstable/main libvorbisenc2 amd64 1.3.2-1.3 [143 kB] Get:59 http://localhost:9999/debian/ unstable/main libsndfile1 amd64 1.0.25-7 [242 kB] Get:60 http://localhost:9999/debian/ unstable/main libxi6 amd64 2:1.7.1.901-1 [80.8 kB] Get:61 http://localhost:9999/debian/ unstable/main libxtst6 amd64 2:1.2.1-1+deb7u1 [26.8 kB] Get:62 http://localhost:9999/debian/ unstable/main libpulse0 amd64 4.0-3 [243 kB] Get:63 http://localhost:9999/debian/ unstable/main libpulse-mainloop-glib0 amd64 4.0-3 [25.6 kB] Get:64 http://localhost:9999/debian/ unstable/main libsdl1.2debian amd64 1.2.15-5 [220 kB] Get:65 http://localhost:9999/debian/ unstable/main libx86-1 amd64 1.1+ds1-10 [85.8 kB] Get:66 http://localhost:9999/debian/ unstable/main libsvga1 amd64 1:1.4.3-33 [290 kB] Get:67 http://localhost:9999/debian/ unstable/main libunistring0 amd64 0.9.3-5 [434 kB] Get:68 http://localhost:9999/debian/ unstable/main file amd64 1:5.14-2 [54.0 kB] Get:69 http://localhost:9999/debian/ unstable/main gettext-base amd64 0.18.3-1 [161 kB] Get:70 http://localhost:9999/debian/ unstable/main autotools-dev all 20130515.1 [73.0 kB] Get:71 http://localhost:9999/debian/ unstable/main gettext amd64 0.18.3-1 [1898 kB] Get:72 http://localhost:9999/debian/ unstable/main intltool-debian all 0.35.0+20060710.1 [30.8 kB] Get:73 http://localhost:9999/debian/ unstable/main po-debconf all 1.0.16+nmu2 [224 kB] Get:74 http://localhost:9999/debian/ unstable/main debhelper all 9.20130630 [710 kB] Get:75 http://localhost:9999/debian/ unstable/main xorg-sgml-doctools all 1:1.10-1 [24.1 kB] Get:76 http://localhost:9999/debian/ unstable/main x11proto-core-dev all 7.0.24-1 [779 kB] Get:77 http://localhost:9999/debian/ unstable/main libxau-dev amd64 1:1.0.8-1 [23.6 kB] Get:78 http://localhost:9999/debian/ unstable/main libxdmcp-dev amd64 1:1.1.1-1 [42.3 kB] Get:79 http://localhost:9999/debian/ unstable/main x11proto-input-dev all 2.3-1 [177 kB] Get:80 http://localhost:9999/debian/ unstable/main x11proto-kb-dev all 1.0.6-2 [269 kB] Get:81 http://localhost:9999/debian/ unstable/main xtrans-dev all 1.2.7-1 [112 kB] Get:82 http://localhost:9999/debian/ unstable/main libpthread-stubs0 amd64 0.3-3 [3228 B] Get:83 http://localhost:9999/debian/ unstable/main libpthread-stubs0-dev amd64 0.3-3 [3998 B] Get:84 http://localhost:9999/debian/ unstable/main libxcb1-dev amd64 1.9.1-3 [103 kB] Get:85 http://localhost:9999/debian/ unstable/main libx11-dev amd64 2:1.6.0-1 [1055 kB] Get:86 http://localhost:9999/debian/ unstable/main zlib1g-dev amd64 1:1.2.8.dfsg-1 [217 kB] Get:87 http://localhost:9999/debian/ unstable/main libpng12-dev amd64 1.2.49-4 [267 kB] Get:88 http://localhost:9999/debian/ unstable/main libslang2-dev amd64 2.2.4-15 [595 kB] Get:89 http://localhost:9999/debian/ unstable/main libtinfo-dev amd64 5.9+20130608-1 [108 kB] Get:90 http://localhost:9999/debian/ unstable/main libncurses5-dev amd64 5.9+20130608-1 [222 kB] Get:91 http://localhost:9999/debian/ unstable/main libaa1-dev amd64 1.4p5-40 [145 kB] Get:92 http://localhost:9999/debian/ unstable/main libasound2-dev amd64 1.0.27.2-1 [113 kB] Get:93 http://localhost:9999/debian/ unstable/main libavahi-common-dev amd64 0.6.31-2 [73.1 kB] Get:94 http://localhost:9999/debian/ unstable/main pkg-config amd64 0.26-1 [59.5 kB] Get:95 http://localhost:9999/debian/ unstable/main libdbus-1-dev amd64 1.6.12-1 [247 kB] Get:96 http://localhost:9999/debian/ unstable/main libavahi-client-dev amd64 0.6.31-2 [67.4 kB] Get:97 http://localhost:9999/debian/ unstable/main libcaca-dev amd64 0.99.beta18-1 [1005 kB] Get:98 http://localhost:9999/debian/ unstable/main libfreetype6-dev amd64 2.4.9-1.1 [805 kB] Get:99 http://localhost:9999/debian/ unstable/main libjpeg8-dev amd64 8d-1 [242 kB] Get:100 http://localhost:9999/debian/ unstable/main x11proto-xext-dev all 7.2.1-1 [273 kB] Get:101 http://localhost:9999/debian/ unstable/main libxext-dev amd64 2:1.3.2-1 [116 kB] Get:102 http://localhost:9999/debian/ unstable/main libdirectfb-dev amd64 1.2.10.0-5 [928 kB] Get:103 http://localhost:9999/debian/ unstable/main libdrm-dev amd64 2.4.45-3 [656 kB] Get:104 http://localhost:9999/debian/ unstable/main libelfg0 amd64 0.8.13-3 [60.2 kB] Get:105 http://localhost:9999/debian/ unstable/main mesa-common-dev amd64 9.1.4-1 [301 kB] Get:106 http://localhost:9999/debian/ unstable/main libx11-xcb-dev amd64 2:1.6.0-1 [155 kB] Get:107 http://localhost:9999/debian/ unstable/main libxcb-dri2-0-dev amd64 1.9.1-3 [15.8 kB] Get:108 http://localhost:9999/debian/ unstable/main libxcb-glx0-dev amd64 1.9.1-3 [49.2 kB] Get:109 http://localhost:9999/debian/ unstable/main x11proto-fixes-dev all 1:5.0-2 [19.2 kB] Get:110 http://localhost:9999/debian/ unstable/main libxfixes-dev amd64 1:5.0.1-1 [24.3 kB] Get:111 http://localhost:9999/debian/ unstable/main x11proto-damage-dev all 1:1.2.1-2 [11.8 kB] Get:112 http://localhost:9999/debian/ unstable/main libxdamage-dev amd64 1:1.1.4-1 [14.8 kB] Get:113 http://localhost:9999/debian/ unstable/main x11proto-xf86vidmode-dev all 2.3.1-2 [6114 B] Get:114 http://localhost:9999/debian/ unstable/main libxxf86vm-dev amd64 1:1.1.2-1+deb7u1 [23.8 kB] Get:115 http://localhost:9999/debian/ unstable/main x11proto-dri2-dev all 2.8-2 [18.2 kB] Get:116 http://localhost:9999/debian/ unstable/main x11proto-gl-dev all 1.4.16-2 [32.1 kB] Get:117 http://localhost:9999/debian/ unstable/main libgl1-mesa-dev amd64 9.1.4-1 [34.5 kB] Get:118 http://localhost:9999/debian/ unstable/main libglib2.0-data all 2.36.3-3 [1847 kB] Get:119 http://localhost:9999/debian/ unstable/main libglib2.0-bin amd64 2.36.3-3 [1057 kB] Get:120 http://localhost:9999/debian/ unstable/main libpcre3-dev amd64 1:8.31-2 [356 kB] Get:121 http://localhost:9999/debian/ unstable/main libglib2.0-dev amd64 2.36.3-3 [2283 kB] Get:122 http://localhost:9999/debian/ unstable/main libglu1-mesa-dev amd64 9.0.0-1 [315 kB] Get:123 http://localhost:9999/debian/ unstable/main libgpm-dev amd64 1.20.4-6.1 [39.6 kB] Get:124 http://localhost:9999/debian/ unstable/main libpulse-dev amd64 4.0-3 [81.6 kB] Get:125 http://localhost:9999/debian/ unstable/main libts-dev amd64 1.0-11 [11.7 kB] Get:126 http://localhost:9999/debian/ unstable/main libsdl1.2-dev amd64 1.2.15-5 [905 kB] Get:127 http://localhost:9999/debian/ unstable/main libsvga1-dev amd64 1:1.4.3-33 [559 kB] Get:128 http://localhost:9999/debian/ unstable/main nasm amd64 2.10.07-1 [1465 kB] debconf: delaying package configuration, since apt-utils is not installed Fetched 37.5 MB in 2s (15.0 MB/s) Selecting previously unselected package libncursesw5:amd64. (Reading database ... 14701 files and directories currently installed.) Unpacking libncursesw5:amd64 (from .../libncursesw5_5.9+20130608-1_amd64.deb) ... Selecting previously unselected package libpipeline1:amd64. Unpacking libpipeline1:amd64 (from .../libpipeline1_1.2.4-1_amd64.deb) ... Selecting previously unselected package libpopt0:amd64. Unpacking libpopt0:amd64 (from .../libpopt0_1.16-7_amd64.deb) ... Selecting previously unselected package groff-base. Unpacking groff-base (from .../groff-base_1.22.2-3_amd64.deb) ... Selecting previously unselected package bsdmainutils. Unpacking bsdmainutils (from .../bsdmainutils_9.0.5_amd64.deb) ... Selecting previously unselected package man-db. Unpacking man-db (from .../man-db_2.6.5-2_amd64.deb) ... Selecting previously unselected package libasprintf0c2:amd64. Unpacking libasprintf0c2:amd64 (from .../libasprintf0c2_0.18.3-1_amd64.deb) ... Selecting previously unselected package libmagic1:amd64. Unpacking libmagic1:amd64 (from .../libmagic1_1%3a5.14-2_amd64.deb) ... Selecting previously unselected package libwrap0:amd64. Unpacking libwrap0:amd64 (from .../libwrap0_7.6.q-24_amd64.deb) ... Selecting previously unselected package libxml2:amd64. Unpacking libxml2:amd64 (from .../libxml2_2.9.1+dfsg1-2_amd64.deb) ... Selecting previously unselected package libxau6:amd64. Unpacking libxau6:amd64 (from .../libxau6_1%3a1.0.8-1_amd64.deb) ... Selecting previously unselected package libxdmcp6:amd64. Unpacking libxdmcp6:amd64 (from .../libxdmcp6_1%3a1.1.1-1_amd64.deb) ... Selecting previously unselected package libxcb1:amd64. Unpacking libxcb1:amd64 (from .../libxcb1_1.9.1-3_amd64.deb) ... Selecting previously unselected package libx11-data. Unpacking libx11-data (from .../libx11-data_2%3a1.6.0-1_all.deb) ... Selecting previously unselected package libx11-6:amd64. Unpacking libx11-6:amd64 (from .../libx11-6_2%3a1.6.0-1_amd64.deb) ... Selecting previously unselected package libaa1:amd64. Unpacking libaa1:amd64 (from .../libaa1_1.4p5-40_amd64.deb) ... Selecting previously unselected package libasound2-data. Unpacking libasound2-data (from .../libasound2-data_1.0.27.2-1_all.deb) ... Selecting previously unselected package libasound2:amd64. Unpacking libasound2:amd64 (from .../libasound2_1.0.27.2-1_amd64.deb) ... Selecting previously unselected package libasyncns0:amd64. Unpacking libasyncns0:amd64 (from .../libasyncns0_0.8-4_amd64.deb) ... Selecting previously unselected package libavahi-common-data:amd64. Unpacking libavahi-common-data:amd64 (from .../libavahi-common-data_0.6.31-2_amd64.deb) ... Selecting previously unselected package libavahi-common3:amd64. Unpacking libavahi-common3:amd64 (from .../libavahi-common3_0.6.31-2_amd64.deb) ... Selecting previously unselected package libdbus-1-3:amd64. Unpacking libdbus-1-3:amd64 (from .../libdbus-1-3_1.6.12-1_amd64.deb) ... Selecting previously unselected package libavahi-client3:amd64. Unpacking libavahi-client3:amd64 (from .../libavahi-client3_0.6.31-2_amd64.deb) ... Selecting previously unselected package libcaca0:amd64. Unpacking libcaca0:amd64 (from .../libcaca0_0.99.beta18-1_amd64.deb) ... Selecting previously unselected package libglib2.0-0:amd64. Unpacking libglib2.0-0:amd64 (from .../libglib2.0-0_2.36.3-3_amd64.deb) ... Selecting previously unselected package libcroco3:amd64. Unpacking libcroco3:amd64 (from .../libcroco3_0.6.8-2_amd64.deb) ... Selecting previously unselected package tsconf. Unpacking tsconf (from .../archives/tsconf_1.0-11_all.deb) ... Selecting previously unselected package libts-0.0-0:amd64. Unpacking libts-0.0-0:amd64 (from .../libts-0.0-0_1.0-11_amd64.deb) ... Selecting previously unselected package libdirectfb-1.2-9:amd64. Unpacking libdirectfb-1.2-9:amd64 (from .../libdirectfb-1.2-9_1.2.10.0-5_amd64.deb) ... Selecting previously unselected package libfreetype6:amd64. Unpacking libfreetype6:amd64 (from .../libfreetype6_2.4.9-1.1_amd64.deb) ... Selecting previously unselected package libjpeg8:amd64. Unpacking libjpeg8:amd64 (from .../libjpeg8_8d-1_amd64.deb) ... Selecting previously unselected package libpng12-0:amd64. Unpacking libpng12-0:amd64 (from .../libpng12-0_1.2.49-4_amd64.deb) ... Selecting previously unselected package libxext6:amd64. Unpacking libxext6:amd64 (from .../libxext6_2%3a1.3.2-1_amd64.deb) ... Selecting previously unselected package libdirectfb-extra:amd64. Unpacking libdirectfb-extra:amd64 (from .../libdirectfb-extra_1.2.10.0-5_amd64.deb) ... Selecting previously unselected package libdrm2:amd64. Unpacking libdrm2:amd64 (from .../libdrm2_2.4.45-3_amd64.deb) ... Selecting previously unselected package libpciaccess0:amd64. Unpacking libpciaccess0:amd64 (from .../libpciaccess0_0.13.1-2_amd64.deb) ... Selecting previously unselected package libdrm-intel1:amd64. Unpacking libdrm-intel1:amd64 (from .../libdrm-intel1_2.4.45-3_amd64.deb) ... Selecting previously unselected package libdrm-nouveau2:amd64. Unpacking libdrm-nouveau2:amd64 (from .../libdrm-nouveau2_2.4.45-3_amd64.deb) ... Selecting previously unselected package libdrm-radeon1:amd64. Unpacking libdrm-radeon1:amd64 (from .../libdrm-radeon1_2.4.45-3_amd64.deb) ... Selecting previously unselected package libogg0:amd64. Unpacking libogg0:amd64 (from .../libogg0_1.3.1-1_amd64.deb) ... Selecting previously unselected package libflac8:amd64. Unpacking libflac8:amd64 (from .../libflac8_1.3.0-1_amd64.deb) ... Selecting previously unselected package libglapi-mesa:amd64. Unpacking libglapi-mesa:amd64 (from .../libglapi-mesa_9.1.4-1_amd64.deb) ... Selecting previously unselected package libx11-xcb1:amd64. Unpacking libx11-xcb1:amd64 (from .../libx11-xcb1_2%3a1.6.0-1_amd64.deb) ... Selecting previously unselected package libxcb-dri2-0:amd64. Unpacking libxcb-dri2-0:amd64 (from .../libxcb-dri2-0_1.9.1-3_amd64.deb) ... Selecting previously unselected package libxcb-glx0:amd64. Unpacking libxcb-glx0:amd64 (from .../libxcb-glx0_1.9.1-3_amd64.deb) ... Selecting previously unselected package libxfixes3:amd64. Unpacking libxfixes3:amd64 (from .../libxfixes3_1%3a5.0.1-1_amd64.deb) ... Selecting previously unselected package libxdamage1:amd64. Unpacking libxdamage1:amd64 (from .../libxdamage1_1%3a1.1.4-1_amd64.deb) ... Selecting previously unselected package libxxf86vm1:amd64. Unpacking libxxf86vm1:amd64 (from .../libxxf86vm1_1%3a1.1.2-1+deb7u1_amd64.deb) ... Selecting previously unselected package libgl1-mesa-glx:amd64. Unpacking libgl1-mesa-glx:amd64 (from .../libgl1-mesa-glx_9.1.4-1_amd64.deb) ... Selecting previously unselected package libglu1-mesa:amd64. Unpacking libglu1-mesa:amd64 (from .../libglu1-mesa_9.0.0-1_amd64.deb) ... Selecting previously unselected package x11-common. Unpacking x11-common (from .../x11-common_1%3a7.7+3_all.deb) ... Selecting previously unselected package libice6:amd64. Unpacking libice6:amd64 (from .../libice6_2%3a1.0.8-2_amd64.deb) ... Selecting previously unselected package libkms1:amd64. Unpacking libkms1:amd64 (from .../libkms1_2.4.45-3_amd64.deb) ... Selecting previously unselected package libpcrecpp0:amd64. Unpacking libpcrecpp0:amd64 (from .../libpcrecpp0_1%3a8.31-2_amd64.deb) ... Selecting previously unselected package libjson-c2:amd64. Unpacking libjson-c2:amd64 (from .../libjson-c2_0.11-2_amd64.deb) ... Selecting previously unselected package libsm6:amd64. Unpacking libsm6:amd64 (from .../libsm6_2%3a1.2.1-2_amd64.deb) ... Selecting previously unselected package libvorbis0a:amd64. Unpacking libvorbis0a:amd64 (from .../libvorbis0a_1.3.2-1.3_amd64.deb) ... Selecting previously unselected package libvorbisenc2:amd64. Unpacking libvorbisenc2:amd64 (from .../libvorbisenc2_1.3.2-1.3_amd64.deb) ... Selecting previously unselected package libsndfile1:amd64. Unpacking libsndfile1:amd64 (from .../libsndfile1_1.0.25-7_amd64.deb) ... Selecting previously unselected package libxi6:amd64. Unpacking libxi6:amd64 (from .../libxi6_2%3a1.7.1.901-1_amd64.deb) ... Selecting previously unselected package libxtst6:amd64. Unpacking libxtst6:amd64 (from .../libxtst6_2%3a1.2.1-1+deb7u1_amd64.deb) ... Selecting previously unselected package libpulse0:amd64. Unpacking libpulse0:amd64 (from .../libpulse0_4.0-3_amd64.deb) ... Selecting previously unselected package libpulse-mainloop-glib0:amd64. Unpacking libpulse-mainloop-glib0:amd64 (from .../libpulse-mainloop-glib0_4.0-3_amd64.deb) ... Selecting previously unselected package libsdl1.2debian:amd64. Unpacking libsdl1.2debian:amd64 (from .../libsdl1.2debian_1.2.15-5_amd64.deb) ... Selecting previously unselected package libx86-1:amd64. Unpacking libx86-1:amd64 (from .../libx86-1_1.1+ds1-10_amd64.deb) ... Selecting previously unselected package libsvga1:amd64. Unpacking libsvga1:amd64 (from .../libsvga1_1%3a1.4.3-33_amd64.deb) ... Selecting previously unselected package libunistring0:amd64. Unpacking libunistring0:amd64 (from .../libunistring0_0.9.3-5_amd64.deb) ... Selecting previously unselected package file. Unpacking file (from .../file_1%3a5.14-2_amd64.deb) ... Selecting previously unselected package gettext-base. Unpacking gettext-base (from .../gettext-base_0.18.3-1_amd64.deb) ... Selecting previously unselected package autotools-dev. Unpacking autotools-dev (from .../autotools-dev_20130515.1_all.deb) ... Selecting previously unselected package gettext. Unpacking gettext (from .../gettext_0.18.3-1_amd64.deb) ... Selecting previously unselected package intltool-debian. Unpacking intltool-debian (from .../intltool-debian_0.35.0+20060710.1_all.deb) ... Selecting previously unselected package po-debconf. Unpacking po-debconf (from .../po-debconf_1.0.16+nmu2_all.deb) ... Selecting previously unselected package debhelper. Unpacking debhelper (from .../debhelper_9.20130630_all.deb) ... Selecting previously unselected package xorg-sgml-doctools. Unpacking xorg-sgml-doctools (from .../xorg-sgml-doctools_1%3a1.10-1_all.deb) ... Selecting previously unselected package x11proto-core-dev. Unpacking x11proto-core-dev (from .../x11proto-core-dev_7.0.24-1_all.deb) ... Selecting previously unselected package libxau-dev:amd64. Unpacking libxau-dev:amd64 (from .../libxau-dev_1%3a1.0.8-1_amd64.deb) ... Selecting previously unselected package libxdmcp-dev:amd64. Unpacking libxdmcp-dev:amd64 (from .../libxdmcp-dev_1%3a1.1.1-1_amd64.deb) ... Selecting previously unselected package x11proto-input-dev. Unpacking x11proto-input-dev (from .../x11proto-input-dev_2.3-1_all.deb) ... Selecting previously unselected package x11proto-kb-dev. Unpacking x11proto-kb-dev (from .../x11proto-kb-dev_1.0.6-2_all.deb) ... Selecting previously unselected package xtrans-dev. Unpacking xtrans-dev (from .../xtrans-dev_1.2.7-1_all.deb) ... Selecting previously unselected package libpthread-stubs0:amd64. Unpacking libpthread-stubs0:amd64 (from .../libpthread-stubs0_0.3-3_amd64.deb) ... Selecting previously unselected package libpthread-stubs0-dev:amd64. Unpacking libpthread-stubs0-dev:amd64 (from .../libpthread-stubs0-dev_0.3-3_amd64.deb) ... Selecting previously unselected package libxcb1-dev:amd64. Unpacking libxcb1-dev:amd64 (from .../libxcb1-dev_1.9.1-3_amd64.deb) ... Selecting previously unselected package libx11-dev:amd64. Unpacking libx11-dev:amd64 (from .../libx11-dev_2%3a1.6.0-1_amd64.deb) ... Selecting previously unselected package zlib1g-dev:amd64. Unpacking zlib1g-dev:amd64 (from .../zlib1g-dev_1%3a1.2.8.dfsg-1_amd64.deb) ... Selecting previously unselected package libpng12-dev. Unpacking libpng12-dev (from .../libpng12-dev_1.2.49-4_amd64.deb) ... Selecting previously unselected package libslang2-dev:amd64. Unpacking libslang2-dev:amd64 (from .../libslang2-dev_2.2.4-15_amd64.deb) ... Selecting previously unselected package libtinfo-dev:amd64. Unpacking libtinfo-dev:amd64 (from .../libtinfo-dev_5.9+20130608-1_amd64.deb) ... Selecting previously unselected package libncurses5-dev:amd64. Unpacking libncurses5-dev:amd64 (from .../libncurses5-dev_5.9+20130608-1_amd64.deb) ... Selecting previously unselected package libaa1-dev. Unpacking libaa1-dev (from .../libaa1-dev_1.4p5-40_amd64.deb) ... Selecting previously unselected package libasound2-dev:amd64. Unpacking libasound2-dev:amd64 (from .../libasound2-dev_1.0.27.2-1_amd64.deb) ... Selecting previously unselected package libavahi-common-dev. Unpacking libavahi-common-dev (from .../libavahi-common-dev_0.6.31-2_amd64.deb) ... Selecting previously unselected package pkg-config. Unpacking pkg-config (from .../pkg-config_0.26-1_amd64.deb) ... Selecting previously unselected package libdbus-1-dev:amd64. Unpacking libdbus-1-dev:amd64 (from .../libdbus-1-dev_1.6.12-1_amd64.deb) ... Selecting previously unselected package libavahi-client-dev. Unpacking libavahi-client-dev (from .../libavahi-client-dev_0.6.31-2_amd64.deb) ... Selecting previously unselected package libcaca-dev. Unpacking libcaca-dev (from .../libcaca-dev_0.99.beta18-1_amd64.deb) ... Selecting previously unselected package libfreetype6-dev. Unpacking libfreetype6-dev (from .../libfreetype6-dev_2.4.9-1.1_amd64.deb) ... Selecting previously unselected package libjpeg8-dev:amd64. Unpacking libjpeg8-dev:amd64 (from .../libjpeg8-dev_8d-1_amd64.deb) ... Selecting previously unselected package x11proto-xext-dev. Unpacking x11proto-xext-dev (from .../x11proto-xext-dev_7.2.1-1_all.deb) ... Selecting previously unselected package libxext-dev:amd64. Unpacking libxext-dev:amd64 (from .../libxext-dev_2%3a1.3.2-1_amd64.deb) ... Selecting previously unselected package libdirectfb-dev. Unpacking libdirectfb-dev (from .../libdirectfb-dev_1.2.10.0-5_amd64.deb) ... Selecting previously unselected package libdrm-dev. Unpacking libdrm-dev (from .../libdrm-dev_2.4.45-3_amd64.deb) ... Selecting previously unselected package libelfg0. Unpacking libelfg0 (from .../libelfg0_0.8.13-3_amd64.deb) ... Selecting previously unselected package mesa-common-dev. Unpacking mesa-common-dev (from .../mesa-common-dev_9.1.4-1_amd64.deb) ... Selecting previously unselected package libx11-xcb-dev. Unpacking libx11-xcb-dev (from .../libx11-xcb-dev_2%3a1.6.0-1_amd64.deb) ... Selecting previously unselected package libxcb-dri2-0-dev:amd64. Unpacking libxcb-dri2-0-dev:amd64 (from .../libxcb-dri2-0-dev_1.9.1-3_amd64.deb) ... Selecting previously unselected package libxcb-glx0-dev:amd64. Unpacking libxcb-glx0-dev:amd64 (from .../libxcb-glx0-dev_1.9.1-3_amd64.deb) ... Selecting previously unselected package x11proto-fixes-dev. Unpacking x11proto-fixes-dev (from .../x11proto-fixes-dev_1%3a5.0-2_all.deb) ... Selecting previously unselected package libxfixes-dev. Unpacking libxfixes-dev (from .../libxfixes-dev_1%3a5.0.1-1_amd64.deb) ... Selecting previously unselected package x11proto-damage-dev. Unpacking x11proto-damage-dev (from .../x11proto-damage-dev_1%3a1.2.1-2_all.deb) ... Selecting previously unselected package libxdamage-dev. Unpacking libxdamage-dev (from .../libxdamage-dev_1%3a1.1.4-1_amd64.deb) ... Selecting previously unselected package x11proto-xf86vidmode-dev. Unpacking x11proto-xf86vidmode-dev (from .../x11proto-xf86vidmode-dev_2.3.1-2_all.deb) ... Selecting previously unselected package libxxf86vm-dev. Unpacking libxxf86vm-dev (from .../libxxf86vm-dev_1%3a1.1.2-1+deb7u1_amd64.deb) ... Selecting previously unselected package x11proto-dri2-dev. Unpacking x11proto-dri2-dev (from .../x11proto-dri2-dev_2.8-2_all.deb) ... Selecting previously unselected package x11proto-gl-dev. Unpacking x11proto-gl-dev (from .../x11proto-gl-dev_1.4.16-2_all.deb) ... Selecting previously unselected package libgl1-mesa-dev. Unpacking libgl1-mesa-dev (from .../libgl1-mesa-dev_9.1.4-1_amd64.deb) ... Selecting previously unselected package libglib2.0-data. Unpacking libglib2.0-data (from .../libglib2.0-data_2.36.3-3_all.deb) ... Selecting previously unselected package libglib2.0-bin. Unpacking libglib2.0-bin (from .../libglib2.0-bin_2.36.3-3_amd64.deb) ... Selecting previously unselected package libpcre3-dev:amd64. Unpacking libpcre3-dev:amd64 (from .../libpcre3-dev_1%3a8.31-2_amd64.deb) ... Selecting previously unselected package libglib2.0-dev. Unpacking libglib2.0-dev (from .../libglib2.0-dev_2.36.3-3_amd64.deb) ... Selecting previously unselected package libglu1-mesa-dev. Unpacking libglu1-mesa-dev (from .../libglu1-mesa-dev_9.0.0-1_amd64.deb) ... Selecting previously unselected package libgpm-dev:amd64. Unpacking libgpm-dev:amd64 (from .../libgpm-dev_1.20.4-6.1_amd64.deb) ... Selecting previously unselected package libpulse-dev:amd64. Unpacking libpulse-dev:amd64 (from .../libpulse-dev_4.0-3_amd64.deb) ... Selecting previously unselected package libts-dev:amd64. Unpacking libts-dev:amd64 (from .../libts-dev_1.0-11_amd64.deb) ... Selecting previously unselected package libsdl1.2-dev. Unpacking libsdl1.2-dev (from .../libsdl1.2-dev_1.2.15-5_amd64.deb) ... Selecting previously unselected package libsvga1-dev. Unpacking libsvga1-dev (from .../libsvga1-dev_1%3a1.4.3-33_amd64.deb) ... Selecting previously unselected package nasm. Unpacking nasm (from .../nasm_2.10.07-1_amd64.deb) ... Selecting previously unselected package sbuild-build-depends-pearpc-dummy. Unpacking sbuild-build-depends-pearpc-dummy (from .../sbuild-build-depends-pearpc-dummy.deb) ... Setting up libncursesw5:amd64 (5.9+20130608-1) ... Setting up libpipeline1:amd64 (1.2.4-1) ... Setting up libpopt0:amd64 (1.16-7) ... Setting up groff-base (1.22.2-3) ... Setting up bsdmainutils (9.0.5) ... update-alternatives: using /usr/bin/bsd-write to provide /usr/bin/write (write) in auto mode update-alternatives: using /usr/bin/bsd-from to provide /usr/bin/from (from) in auto mode Setting up man-db (2.6.5-2) ... Not building database; man-db/auto-update is not 'true'. Setting up libasprintf0c2:amd64 (0.18.3-1) ... Setting up libmagic1:amd64 (1:5.14-2) ... Setting up libwrap0:amd64 (7.6.q-24) ... Setting up libxml2:amd64 (2.9.1+dfsg1-2) ... Setting up libxau6:amd64 (1:1.0.8-1) ... Setting up libxdmcp6:amd64 (1:1.1.1-1) ... Setting up libxcb1:amd64 (1.9.1-3) ... Setting up libx11-data (2:1.6.0-1) ... Setting up libx11-6:amd64 (2:1.6.0-1) ... Setting up libaa1:amd64 (1.4p5-40) ... Setting up libasound2-data (1.0.27.2-1) ... Setting up libasound2:amd64 (1.0.27.2-1) ... Setting up libasyncns0:amd64 (0.8-4) ... Setting up libavahi-common-data:amd64 (0.6.31-2) ... Setting up libavahi-common3:amd64 (0.6.31-2) ... Setting up libdbus-1-3:amd64 (1.6.12-1) ... Setting up libavahi-client3:amd64 (0.6.31-2) ... Setting up libcaca0:amd64 (0.99.beta18-1) ... Setting up libglib2.0-0:amd64 (2.36.3-3) ... No schema files found: doing nothing. Setting up libcroco3:amd64 (0.6.8-2) ... Setting up tsconf (1.0-11) ... Setting up libts-0.0-0:amd64 (1.0-11) ... Setting up libdirectfb-1.2-9:amd64 (1.2.10.0-5) ... Setting up libfreetype6:amd64 (2.4.9-1.1) ... Setting up libjpeg8:amd64 (8d-1) ... Setting up libpng12-0:amd64 (1.2.49-4) ... Setting up libxext6:amd64 (2:1.3.2-1) ... Setting up libdirectfb-extra:amd64 (1.2.10.0-5) ... Setting up libdrm2:amd64 (2.4.45-3) ... Setting up libpciaccess0:amd64 (0.13.1-2) ... Setting up libdrm-intel1:amd64 (2.4.45-3) ... Setting up libdrm-nouveau2:amd64 (2.4.45-3) ... Setting up libdrm-radeon1:amd64 (2.4.45-3) ... Setting up libogg0:amd64 (1.3.1-1) ... Setting up libflac8:amd64 (1.3.0-1) ... Setting up libglapi-mesa:amd64 (9.1.4-1) ... Setting up libx11-xcb1:amd64 (2:1.6.0-1) ... Setting up libxcb-dri2-0:amd64 (1.9.1-3) ... Setting up libxcb-glx0:amd64 (1.9.1-3) ... Setting up libxfixes3:amd64 (1:5.0.1-1) ... Setting up libxdamage1:amd64 (1:1.1.4-1) ... Setting up libxxf86vm1:amd64 (1:1.1.2-1+deb7u1) ... Setting up libgl1-mesa-glx:amd64 (9.1.4-1) ... Setting up libglu1-mesa:amd64 (9.0.0-1) ... Setting up x11-common (1:7.7+3) ... update-rc.d: warning: start and stop actions are no longer supported; falling back to defaults All runlevel operations denied by policy invoke-rc.d: policy-rc.d denied execution of start. Setting up libice6:amd64 (2:1.0.8-2) ... Setting up libkms1:amd64 (2.4.45-3) ... Setting up libpcrecpp0:amd64 (1:8.31-2) ... Setting up libjson-c2:amd64 (0.11-2) ... Setting up libsm6:amd64 (2:1.2.1-2) ... Setting up libvorbis0a:amd64 (1.3.2-1.3) ... Setting up libvorbisenc2:amd64 (1.3.2-1.3) ... Setting up libsndfile1:amd64 (1.0.25-7) ... Setting up libxi6:amd64 (2:1.7.1.901-1) ... Setting up libxtst6:amd64 (2:1.2.1-1+deb7u1) ... Setting up libpulse0:amd64 (4.0-3) ... Setting up libpulse-mainloop-glib0:amd64 (4.0-3) ... Setting up libsdl1.2debian:amd64 (1.2.15-5) ... Setting up libx86-1:amd64 (1.1+ds1-10) ... Setting up libsvga1:amd64 (1:1.4.3-33) ... Setting up libunistring0:amd64 (0.9.3-5) ... Setting up file (1:5.14-2) ... Setting up gettext-base (0.18.3-1) ... Setting up autotools-dev (20130515.1) ... Setting up gettext (0.18.3-1) ... Setting up intltool-debian (0.35.0+20060710.1) ... Setting up po-debconf (1.0.16+nmu2) ... Setting up debhelper (9.20130630) ... Setting up xorg-sgml-doctools (1:1.10-1) ... Setting up x11proto-core-dev (7.0.24-1) ... Setting up libxau-dev:amd64 (1:1.0.8-1) ... Setting up libxdmcp-dev:amd64 (1:1.1.1-1) ... Setting up x11proto-input-dev (2.3-1) ... Setting up x11proto-kb-dev (1.0.6-2) ... Setting up xtrans-dev (1.2.7-1) ... Setting up libpthread-stubs0:amd64 (0.3-3) ... Setting up libpthread-stubs0-dev:amd64 (0.3-3) ... Setting up libxcb1-dev:amd64 (1.9.1-3) ... Setting up libx11-dev:amd64 (2:1.6.0-1) ... Setting up zlib1g-dev:amd64 (1:1.2.8.dfsg-1) ... Setting up libpng12-dev (1.2.49-4) ... Setting up libslang2-dev:amd64 (2.2.4-15) ... Setting up libtinfo-dev:amd64 (5.9+20130608-1) ... Setting up libncurses5-dev:amd64 (5.9+20130608-1) ... Setting up libaa1-dev (1.4p5-40) ... Setting up libasound2-dev:amd64 (1.0.27.2-1) ... Setting up libavahi-common-dev (0.6.31-2) ... Setting up pkg-config (0.26-1) ... Setting up libdbus-1-dev:amd64 (1.6.12-1) ... Setting up libavahi-client-dev (0.6.31-2) ... Setting up libcaca-dev (0.99.beta18-1) ... Setting up libfreetype6-dev (2.4.9-1.1) ... Setting up libjpeg8-dev:amd64 (8d-1) ... Setting up x11proto-xext-dev (7.2.1-1) ... Setting up libxext-dev:amd64 (2:1.3.2-1) ... Setting up libdirectfb-dev (1.2.10.0-5) ... Setting up libdrm-dev (2.4.45-3) ... Setting up libelfg0 (0.8.13-3) ... Setting up mesa-common-dev (9.1.4-1) ... Setting up libx11-xcb-dev (2:1.6.0-1) ... Setting up libxcb-dri2-0-dev:amd64 (1.9.1-3) ... Setting up libxcb-glx0-dev:amd64 (1.9.1-3) ... Setting up x11proto-fixes-dev (1:5.0-2) ... Setting up libxfixes-dev (1:5.0.1-1) ... Setting up x11proto-damage-dev (1:1.2.1-2) ... Setting up libxdamage-dev (1:1.1.4-1) ... Setting up x11proto-xf86vidmode-dev (2.3.1-2) ... Setting up libxxf86vm-dev (1:1.1.2-1+deb7u1) ... Setting up x11proto-dri2-dev (2.8-2) ... Setting up x11proto-gl-dev (1.4.16-2) ... Setting up libgl1-mesa-dev (9.1.4-1) ... Setting up libglib2.0-data (2.36.3-3) ... Setting up libglib2.0-bin (2.36.3-3) ... Setting up libpcre3-dev:amd64 (1:8.31-2) ... Setting up libglib2.0-dev (2.36.3-3) ... Setting up libglu1-mesa-dev (9.0.0-1) ... Setting up libgpm-dev:amd64 (1.20.4-6.1) ... Setting up libpulse-dev:amd64 (4.0-3) ... Setting up libts-dev:amd64 (1.0-11) ... Setting up libsdl1.2-dev (1.2.15-5) ... Setting up libsvga1-dev (1:1.4.3-33) ... Setting up nasm (2.10.07-1) ... Setting up sbuild-build-depends-pearpc-dummy (0.invalid.0) ... Processing triggers for libc-bin ... ┌──────────────────────────────────────────────────────────────────────────────┐ │ Build environment │ └──────────────────────────────────────────────────────────────────────────────┘ Kernel: Linux 2.6.32-5-xen-amd64 amd64 (x86_64) Toolchain package versions: binutils_2.23.52.20130620-1 dpkg-dev_1.16.10 g++-4.6_4.6.4-4 g++-4.8_4.8.1-6 gcc-4.6_4.6.4-4 gcc-4.7_4.7.3-6 gcc-4.8_4.8.1-6 libc6-dev_2.17-7 libstdc++-4.8-dev_4.8.1-6 libstdc++6_4.8.1-6 libstdc++6-4.6-dev_4.6.4-4 libstdc++6-4.7-dev_4.7.3-6 linux-libc-dev_3.10.1-1 Package versions: apt_0.9.9.1 autotools-dev_20130515.1 base-files_7.2 base-passwd_3.5.26 bash_4.2+dfsg-1 binutils_2.23.52.20130620-1 bsdmainutils_9.0.5 bsdutils_1:2.20.1-5.5 build-essential_11.6 bzip2_1.0.6-4 clang-3.3_1:3.3-3 coreutils_8.20-3 cpp_4:4.8.1-2 cpp-4.6_4.6.4-4 cpp-4.7_4.7.3-6 cpp-4.8_4.8.1-6 dash_0.5.7-3 debconf_1.5.50 debconf-i18n_1.5.50 debfoster_2.7-1.2 debhelper_9.20130630 debian-archive-keyring_2012.4 debianutils_4.3.4 diffutils_1:3.2-8 dpkg_1.16.10 dpkg-dev_1.16.10 e2fslibs_1.42.8-1 e2fsprogs_1.42.8-1 fakeroot_1.19-2 file_1:5.14-2 findutils_4.4.2-6 g++_4:4.8.1-2 g++-4.6_4.6.4-4 g++-4.8_4.8.1-6 gcc_4:4.8.1-2 gcc-4.4-base_4.4.7-4 gcc-4.5-base_4.5.4-1 gcc-4.6_4.6.4-4 gcc-4.6-base_4.6.4-4 gcc-4.7_4.7.3-6 gcc-4.7-base_4.7.3-6 gcc-4.8_4.8.1-6 gcc-4.8-base_4.8.1-6 gettext_0.18.3-1 gettext-base_0.18.3-1 gnupg_1.4.12-7 gpgv_1.4.12-7 grep_2.14-2 groff-base_1.22.2-3 gzip_1.6-1 hostname_3.13 initscripts_2.88dsf-43 insserv_1.14.0-5 intltool-debian_0.35.0+20060710.1 libaa1_1.4p5-40 libaa1-dev_1.4p5-40 libacl1_2.2.52-1 libapt-pkg4.12_0.9.9.1 libasan0_4.8.1-6 libasound2_1.0.27.2-1 libasound2-data_1.0.27.2-1 libasound2-dev_1.0.27.2-1 libasprintf0c2_0.18.3-1 libasyncns0_0.8-4 libatomic1_4.8.1-6 libattr1_1:2.4.47-1 libavahi-client-dev_0.6.31-2 libavahi-client3_0.6.31-2 libavahi-common-data_0.6.31-2 libavahi-common-dev_0.6.31-2 libavahi-common3_0.6.31-2 libblkid1_2.20.1-5.5 libbz2-1.0_1.0.6-4 libc-bin_2.17-7 libc-dev-bin_2.17-7 libc6_2.17-7 libc6-dev_2.17-7 libcaca-dev_0.99.beta18-1 libcaca0_0.99.beta18-1 libcap2_1:2.22-1.2 libclang-common-3.3-dev_1:3.3-3 libclang1-3.3_1:3.3-3 libclass-isa-perl_0.36-5 libcloog-isl4_0.18.0-2 libcloog-ppl1_0.16.1-3 libcomerr2_1.42.8-1 libcroco3_0.6.8-2 libdb5.1_5.1.29-6 libdbus-1-3_1.6.12-1 libdbus-1-dev_1.6.12-1 libdirectfb-1.2-9_1.2.10.0-5 libdirectfb-dev_1.2.10.0-5 libdirectfb-extra_1.2.10.0-5 libdpkg-perl_1.16.10 libdrm-dev_2.4.45-3 libdrm-intel1_2.4.45-3 libdrm-nouveau2_2.4.45-3 libdrm-radeon1_2.4.45-3 libdrm2_2.4.45-3 libelfg0_0.8.13-3 libffi6_3.0.13-4 libfile-fcntllock-perl_0.14-2 libflac8_1.3.0-1 libfreetype6_2.4.9-1.1 libfreetype6-dev_2.4.9-1.1 libgc1c2_1:7.2d-5 libgcc-4.7-dev_4.7.3-6 libgcc-4.8-dev_4.8.1-6 libgcc1_1:4.8.1-6 libgdbm3_1.8.3-12 libgl1-mesa-dev_9.1.4-1 libgl1-mesa-glx_9.1.4-1 libglapi-mesa_9.1.4-1 libglib2.0-0_2.36.3-3 libglib2.0-bin_2.36.3-3 libglib2.0-data_2.36.3-3 libglib2.0-dev_2.36.3-3 libglu1-mesa_9.0.0-1 libglu1-mesa-dev_9.0.0-1 libgmp10_2:5.1.2+dfsg-2 libgmpxx4ldbl_2:5.1.2+dfsg-2 libgomp1_4.8.1-6 libgpm-dev_1.20.4-6.1 libgpm2_1.20.4-6.1 libice6_2:1.0.8-2 libisl10_0.11.2-1 libitm1_4.8.1-6 libjpeg8_8d-1 libjpeg8-dev_8d-1 libjson-c2_0.11-2 libkms1_2.4.45-3 libllvm3.3_1:3.3-3 liblocale-gettext-perl_1.05-7+b1 liblzma5_5.1.1alpha+20120614-2 libmagic1_1:5.14-2 libmount1_2.20.1-5.5 libmpc2_0.9-4 libmpc3_1.0.1-1 libmpfr4_3.1.1-1 libncurses5_5.9+20130608-1 libncurses5-dev_5.9+20130608-1 libncursesw5_5.9+20130608-1 libobjc-4.7-dev_4.7.3-6 libobjc4_4.8.1-6 libogg0_1.3.1-1 libpam-modules_1.1.3-9 libpam-modules-bin_1.1.3-9 libpam-runtime_1.1.3-9 libpam0g_1.1.3-9 libpciaccess0_0.13.1-2 libpcre3_1:8.31-2 libpcre3-dev_1:8.31-2 libpcrecpp0_1:8.31-2 libpipeline1_1.2.4-1 libpng12-0_1.2.49-4 libpng12-dev_1.2.49-4 libpopt0_1.16-7 libppl-c4_1:1.0-7 libppl12_1:1.0-7 libpthread-stubs0_0.3-3 libpthread-stubs0-dev_0.3-3 libpulse-dev_4.0-3 libpulse-mainloop-glib0_4.0-3 libpulse0_4.0-3 libquadmath0_4.8.1-6 libreadline6_6.2+dfsg-0.1 libsdl1.2-dev_1.2.15-5 libsdl1.2debian_1.2.15-5 libselinux1_2.1.13-2 libsemanage-common_2.1.10-2 libsemanage1_2.1.10-2 libsepol1_2.1.9-2 libslang2_2.2.4-15 libslang2-dev_2.2.4-15 libsm6_2:1.2.1-2 libsndfile1_1.0.25-7 libss2_1.42.8-1 libstdc++-4.8-dev_4.8.1-6 libstdc++6_4.8.1-6 libstdc++6-4.6-dev_4.6.4-4 libstdc++6-4.7-dev_4.7.3-6 libsvga1_1:1.4.3-33 libsvga1-dev_1:1.4.3-33 libswitch-perl_2.16-2 libtext-charwidth-perl_0.04-7+b1 libtext-iconv-perl_1.7-5 libtext-wrapi18n-perl_0.06-7 libtimedate-perl_1.2000-1 libtinfo-dev_5.9+20130608-1 libtinfo5_5.9+20130608-1 libts-0.0-0_1.0-11 libts-dev_1.0-11 libtsan0_4.8.1-6 libunistring0_0.9.3-5 libusb-0.1-4_2:0.1.12-23.2 libustr-1.0-1_1.0.4-3 libuuid1_2.20.1-5.5 libvorbis0a_1.3.2-1.3 libvorbisenc2_1.3.2-1.3 libwrap0_7.6.q-24 libx11-6_2:1.6.0-1 libx11-data_2:1.6.0-1 libx11-dev_2:1.6.0-1 libx11-xcb-dev_2:1.6.0-1 libx11-xcb1_2:1.6.0-1 libx86-1_1.1+ds1-10 libxau-dev_1:1.0.8-1 libxau6_1:1.0.8-1 libxcb-dri2-0_1.9.1-3 libxcb-dri2-0-dev_1.9.1-3 libxcb-glx0_1.9.1-3 libxcb-glx0-dev_1.9.1-3 libxcb1_1.9.1-3 libxcb1-dev_1.9.1-3 libxdamage-dev_1:1.1.4-1 libxdamage1_1:1.1.4-1 libxdmcp-dev_1:1.1.1-1 libxdmcp6_1:1.1.1-1 libxext-dev_2:1.3.2-1 libxext6_2:1.3.2-1 libxfixes-dev_1:5.0.1-1 libxfixes3_1:5.0.1-1 libxi6_2:1.7.1.901-1 libxml2_2.9.1+dfsg1-2 libxtst6_2:1.2.1-1+deb7u1 libxxf86vm-dev_1:1.1.2-1+deb7u1 libxxf86vm1_1:1.1.2-1+deb7u1 linux-libc-dev_3.10.1-1 login_1:4.1.5.1-1 lsb-base_4.1+Debian12 make_3.81-8.2 man-db_2.6.5-2 mawk_1.3.3-17 mesa-common-dev_9.1.4-1 mount_2.20.1-5.5 multiarch-support_2.17-7 nasm_2.10.07-1 ncurses-base_5.9+20130608-1 ncurses-bin_5.9+20130608-1 passwd_1:4.1.5.1-1 patch_2.7.1-3 perl_5.14.2-21 perl-base_5.14.2-21 perl-modules_5.14.2-21 pkg-config_0.26-1 po-debconf_1.0.16+nmu2 readline-common_6.2+dfsg-0.1 sbuild-build-depends-core-dummy_0.invalid.0 sbuild-build-depends-pearpc-dummy_0.invalid.0 sed_4.2.2-1 sensible-utils_0.0.9 sudo_1.8.5p2-1+nmu1 sysv-rc_2.88dsf-43 sysvinit_2.88dsf-43 sysvinit-utils_2.88dsf-43 tar_1.26+dfsg-6 tsconf_1.0-11 tzdata_2013c-2 ucf_3.0027+nmu1 util-linux_2.20.1-5.5 vim_2:7.3.923-3 vim-common_2:7.3.923-3 vim-runtime_2:7.3.923-3 x11-common_1:7.7+3 x11proto-core-dev_7.0.24-1 x11proto-damage-dev_1:1.2.1-2 x11proto-dri2-dev_2.8-2 x11proto-fixes-dev_1:5.0-2 x11proto-gl-dev_1.4.16-2 x11proto-input-dev_2.3-1 x11proto-kb-dev_1.0.6-2 x11proto-xext-dev_7.2.1-1 x11proto-xf86vidmode-dev_2.3.1-2 xorg-sgml-doctools_1:1.10-1 xtrans-dev_1.2.7-1 xz-utils_5.1.1alpha+20120614-2 zlib1g_1:1.2.8.dfsg-1 zlib1g-dev_1:1.2.8.dfsg-1 ┌──────────────────────────────────────────────────────────────────────────────┐ │ Build │ └──────────────────────────────────────────────────────────────────────────────┘ Unpack source ───────────── gpgv: keyblock resource `/sbuild-nonexistent/.gnupg/trustedkeys.gpg': file open error gpgv: Signature made Fri Dec 9 23:59:41 2011 UTC using DSA key ID 7ADF9466 gpgv: Can't check signature: public key not found dpkg-source: warning: failed to verify signature on ./pearpc_0.5.dfsg-2.dsc dpkg-source: info: extracting pearpc in pearpc-0.5.dfsg dpkg-source: info: unpacking pearpc_0.5.dfsg.orig.tar.bz2 dpkg-source: info: unpacking pearpc_0.5.dfsg-2.debian.tar.gz dpkg-source: info: applying fix_ftbfs_with_newer_gcc.patch Check disc space ──────────────── Sufficient free space for build Hack binNMU version ─────────────────── Created changelog entry for binNMU version 0.5.dfsg-2clang1 User Environment ──────────────── HOME=/sbuild-nonexistent LOGNAME=user PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games SCHROOT_ALIAS_NAME=unstable-amd64-sbuild SCHROOT_CHROOT_NAME=unstable-amd64-sbuild SCHROOT_COMMAND=env SCHROOT_GID=1000 SCHROOT_GROUP=user SCHROOT_SESSION_ID=unstable-amd64-sbuild-8b2ae0a4-94d8-4571-b42b-f59b3a6afcd8 SCHROOT_UID=1000 SCHROOT_USER=user SHELL=/bin/sh USER=user dpkg-buildpackage ───────────────── dpkg-buildpackage: source package pearpc dpkg-buildpackage: source version 0.5.dfsg-2clang1 dpkg-source --before-build pearpc-0.5.dfsg dpkg-buildpackage: host architecture amd64 fakeroot debian/rules clean dh clean dh_testdir dh_auto_clean dh_clean debian/rules build-arch dh build-arch dh_testdir -a debian/rules override_dh_auto_configure make[1]: Entering directory `/«PKGBUILDDIR»' dh_auto_configure -- --enable-ui=sdl --program-suffix=.real configure: WARNING: unrecognized options: --disable-maintainer-mode checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking target system type... x86_64-pc-linux-gnu checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... no checking for mawk... mawk checking whether make sets $(MAKE)... yes *** GNU, building POSIX version. we need pthread and rt. *** x86_64 target system checking for ranlib... ranlib checking for gmake... no checking for make... /usr/bin/make checking whether /usr/bin/make sets $(MAKE)... yes checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking for style of include used by /usr/bin/make... GNU checking dependency style of gcc... none checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking dependency style of g++... none checking how to run the C preprocessor... gcc -E checking dependency style of gcc... none checking for flex... no checking for lex... no checking for bison... no checking for byacc... no checking for ar... /usr/bin/ar checking for gar... (cached) /usr/bin/ar checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for clock_settime in -lrt... yes checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking whether byte ordering is bigendian... no checking for sdl-config... /usr/bin/sdl-config checking for SDL - version >= 1.2.0... yes checking for gettimeofday... yes checking for memset... yes checking for setenv... yes checking for log2... no checking for log2 in math.h... no checking for exp2... no checking for exp2 in math.h... yes checking for ANSI C header files... (cached) yes checking pthread.h usability... yes checking pthread.h presence... yes checking for pthread.h... yes checking sys/socket.h usability... yes checking sys/socket.h presence... yes checking for sys/socket.h... yes checking asm/types.h usability... yes checking asm/types.h presence... yes checking for asm/types.h... yes checking for stdint.h... (cached) yes checking for asm/types.h... (cached) yes checking for linux/netlink.h... yes checking for an ANSI C-conforming const... yes checking size of char... 1 checking size of short... 2 checking size of int... 4 checking size of long int... 8 checking size of long long... 8 configure: creating ./config.status config.status: creating Makefile config.status: creating doc/Makefile config.status: creating scripts/Makefile config.status: creating src/Makefile config.status: creating src/cpu/Makefile config.status: creating src/cpu/cpu_generic/Makefile config.status: creating src/cpu/cpu_jitc_x86/Makefile config.status: creating src/cpu/cpu_jitc_x86_64/Makefile config.status: creating src/debug/Makefile config.status: creating src/io/Makefile config.status: creating src/io/3c90x/Makefile config.status: creating src/io/ide/Makefile config.status: creating src/io/graphic/Makefile config.status: creating src/io/rtl8139/Makefile config.status: creating src/io/prom/Makefile config.status: creating src/io/prom/fs/Makefile config.status: creating src/io/prom/fs/hfs/Makefile config.status: creating src/io/prom/fs/hfsplus/Makefile config.status: creating src/io/cuda/Makefile config.status: creating src/io/pci/Makefile config.status: creating src/io/pic/Makefile config.status: creating src/io/macio/Makefile config.status: creating src/io/nvram/Makefile config.status: creating src/io/usb/Makefile config.status: creating src/io/serial/Makefile config.status: creating src/system/Makefile config.status: creating src/system/arch/Makefile config.status: creating src/system/arch/x86/Makefile config.status: creating src/system/arch/x86_64/Makefile config.status: creating src/system/arch/generic/Makefile config.status: creating src/system/osapi/Makefile config.status: creating src/system/osapi/beos/Makefile config.status: creating src/system/osapi/posix/Makefile config.status: creating src/system/osapi/win32/Makefile config.status: creating src/system/ui/Makefile config.status: creating src/system/ui/beos/Makefile config.status: creating src/system/ui/gtk/Makefile config.status: creating src/system/ui/qt/Makefile config.status: creating src/system/ui/sdl/Makefile config.status: creating src/system/ui/win32/Makefile config.status: creating src/system/ui/x11/Makefile config.status: creating src/tools/Makefile config.status: creating config.h config.status: executing depfiles commands configure: WARNING: unrecognized options: --disable-maintainer-mode ./configure successful. ================================================================================ Configuration summary ================================================================================ cpu emulation method: cpu_jitc_x86_64 compiled for architecture: x86_64 compiled for OS-API: posix compiled for UI system: sdl enable debug: yes enable profiling: no make release build: yes omit frame pointer: yes final C compiler flags: -Wundef -Wall -fsigned-char -O3 -fomit-frame-pointer -g -fno-inline -pthread -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT final C++ compiler flags: -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -g -fno-inline -pthread -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT final linker flags: -L/usr/lib/x86_64-linux-gnu -lSDL final linker add: -lpthread -lrt -lrt -L/usr/lib/x86_64-linux-gnu -lSDL ================================================================================ make[1]: Leaving directory `/«PKGBUILDDIR»' dh_auto_build -a make[1]: Entering directory `/«PKGBUILDDIR»' /usr/bin/make all-recursive make[2]: Entering directory `/«PKGBUILDDIR»' Making all in doc make[3]: Entering directory `/«PKGBUILDDIR»/doc' make[3]: Nothing to be done for `all'. make[3]: Leaving directory `/«PKGBUILDDIR»/doc' Making all in src make[3]: Entering directory `/«PKGBUILDDIR»/src' Making all in cpu make[4]: Entering directory `/«PKGBUILDDIR»/src/cpu' Making all in cpu_jitc_x86_64 make[5]: Entering directory `/«PKGBUILDDIR»/src/cpu/cpu_jitc_x86_64' g++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -g -fno-inline -pthread -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -c -o ppc_alu.o ppc_alu.cc g++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -g -fno-inline -pthread -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -c -o ppc_cpu.o ppc_cpu.cc g++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -g -fno-inline -pthread -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -c -o ppc_dec.o ppc_dec.cc ppc_dec.cc:1120:15: warning: unused variable 'last_instr' [-Wunused-variable] static uint32 last_instr = 0, instr_report = 0, instr_count = 0; ^ ppc_dec.cc:1120:31: warning: unused variable 'instr_report' [-Wunused-variable] static uint32 last_instr = 0, instr_report = 0, instr_count = 0; ^ ppc_dec.cc:1120:49: warning: unused variable 'instr_count' [-Wunused-variable] static uint32 last_instr = 0, instr_report = 0, instr_count = 0; ^ 3 warnings generated. g++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -g -fno-inline -pthread -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -c -o ppc_esc.o ppc_esc.cc g++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -g -fno-inline -pthread -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -c -o ppc_exc.o ppc_exc.cc g++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -g -fno-inline -pthread -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -c -o ppc_fpu.o ppc_fpu.cc g++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -g -fno-inline -pthread -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -c -o ppc_mmu.o ppc_mmu.cc g++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -g -fno-inline -pthread -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -c -o ppc_opc.o ppc_opc.cc ppc_opc.cc:1191:15: warning: unused variable 'ppc_to_x86_roundmode' [-Wunused-variable] static uint32 ppc_to_x86_roundmode[] = { ^ 1 warning generated. g++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -g -fno-inline -pthread -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -c -o ppc_vec.o ppc_vec.cc g++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -g -fno-inline -pthread -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -c -o jitc.o jitc.cc g++ -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -Wundef -Wall -Woverloaded-virtual -fsigned-char -O3 -fomit-frame-pointer -g -fno-inline -pthread -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -c -o jitc_debug.o jitc_debug.cc gcc -DHAVE_CONFIG_H -I. -I../../.. -I ../.. -c -o jitc_mmu.o jitc_mmu.S 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: unknown directive .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:106:6: error: unknown token in expression mov %r8, %rdi ^ jitc_mmu.S:106:6: error: Unexpected token! mov %r8, %rdi ^ jitc_mmu.S:107:5: error: unknown token in expression or %rax, -1 ^ jitc_mmu.S:107:5: error: Unexpected token! or %rax, -1 ^ jitc_mmu.S:108:6: error: unknown token in expression mov %ecx, 32*4*3 / 8 ^ jitc_mmu.S:108:6: error: Unexpected token! mov %ecx, 32*4*3 / 8 ^ jitc_mmu.S:109:6: error: unknown token in expression add %rdi, tlb_code_0_eff ^ jitc_mmu.S:109:6: error: Unexpected token! add %rdi, tlb_code_0_eff ^ jitc_mmu.S:111:6: error: unknown token in expression mov %rdi, %r8 ^ jitc_mmu.S:111:6: error: Unexpected token! mov %rdi, %r8 ^ jitc_mmu.S:121:5: error: unknown token in expression or %ecx, -1 ^ jitc_mmu.S:121:5: error: Unexpected token! or %ecx, -1 ^ jitc_mmu.S:122:6: error: unknown token in expression shr %eax, 12 ^ jitc_mmu.S:122:6: error: Unexpected token! shr %eax, 12 ^ jitc_mmu.S:123:6: error: unknown token in expression and %eax, 32 -1 ^ jitc_mmu.S:123:6: error: Unexpected token! and %eax, 32 -1 ^ jitc_mmu.S:124:7: error: Unexpected token! mov [%rdi+tlb_code_0_eff + %rax*4], %ecx ^ jitc_mmu.S:124:7: error: unexpected token in argument list mov [%rdi+tlb_code_0_eff + %rax*4], %ecx ^ jitc_mmu.S:125:7: error: Unexpected token! mov [%rdi+tlb_data_0_eff + %rax*4], %ecx ^ jitc_mmu.S:125:7: error: unexpected token in argument list mov [%rdi+tlb_data_0_eff + %rax*4], %ecx ^ jitc_mmu.S:126:7: error: Unexpected token! mov [%rdi+tlb_data_8_eff + %rax*4], %ecx ^ jitc_mmu.S:126:7: error: unexpected token in argument list mov [%rdi+tlb_data_8_eff + %rax*4], %ecx ^ jitc_mmu.S:157:7: error: unknown token in expression push %rax ^ jitc_mmu.S:157:7: error: Unexpected token! push %rax ^ jitc_mmu.S:158:7: error: unknown token in expression push %rcx ^ jitc_mmu.S:158:7: error: Unexpected token! push %rcx ^ jitc_mmu.S:159:7: error: unknown token in expression push %rsi ^ jitc_mmu.S:159:7: error: Unexpected token! push %rsi ^ jitc_mmu.S:160:7: error: unknown token in expression push %rdi ^ jitc_mmu.S:160:7: error: Unexpected token! push %rdi ^ jitc_mmu.S:161:7: error: unknown token in expression push %r8 ^ jitc_mmu.S:161:7: error: Unexpected token! push %r8 ^ jitc_mmu.S:162:6: error: unknown token in expression mov %edi, %ebx ^ jitc_mmu.S:162:6: error: Unexpected token! mov %edi, %ebx ^ jitc_mmu.S:163:6: error: unknown token in expression sub %edi, 0x84000000 ^ jitc_mmu.S:163:6: error: Unexpected token! sub %edi, 0x84000000 ^ jitc_mmu.S:165:6: error: unknown token in expression pop %r8 ^ jitc_mmu.S:165:6: error: Unexpected token! pop %r8 ^ jitc_mmu.S:166:6: error: unknown token in expression pop %rdi ^ jitc_mmu.S:166:6: error: Unexpected token! pop %rdi ^ jitc_mmu.S:167:6: error: unknown token in expression pop %rsi ^ jitc_mmu.S:167:6: error: Unexpected token! pop %rsi ^ jitc_mmu.S:168:6: error: unknown token in expression pop %rcx ^ jitc_mmu.S:168:6: error: Unexpected token! pop %rcx ^ jitc_mmu.S:169:6: error: unknown token in expression pop %rax ^ jitc_mmu.S:169:6: error: Unexpected token! pop %rax ^ jitc_mmu.S:341:6: error: unknown token in expression pop %rdx # return address is no longer needed ^ jitc_mmu.S:341:6: error: Unexpected token! pop %rdx # return address is no longer needed ^ jitc_mmu.S:342:6: error: unknown token in expression pop %rbx # bytes to roll back ^ jitc_mmu.S:342:6: error: Unexpected token! pop %rbx # bytes to roll back ^ jitc_mmu.S:343:6: error: unknown token in expression add %rsp, %rbx ^ jitc_mmu.S:343:6: error: Unexpected token! add %rsp, %rbx ^ jitc_mmu.S:344:6: error: unknown token in expression mov %ecx, (1<<27) # PPC_EXC_SRR1_PROT ^ jitc_mmu.S:344:6: error: Unexpected token! mov %ecx, (1<<27) # PPC_EXC_SRR1_PROT ^ jitc_mmu.S:349:6: error: unknown token in expression pop %rdx # return address is no longer needed ^ jitc_mmu.S:349:6: error: Unexpected token! pop %rdx # return address is no longer needed ^ jitc_mmu.S:350:6: error: unknown token in expression pop %rbx # bytes to roll back ^ jitc_mmu.S:350:6: error: Unexpected token! pop %rbx # bytes to roll back ^ jitc_mmu.S:351:6: error: unknown token in expression add %rsp, %rbx ^ jitc_mmu.S:351:6: error: Unexpected token! add %rsp, %rbx ^ jitc_mmu.S:352:6: error: unknown token in expression mov %ecx, (1<<27) # PPC_EXC_DSISR_PROT ^ jitc_mmu.S:352:6: error: Unexpected token! mov %ecx, (1<<27) # PPC_EXC_DSISR_PROT ^ jitc_mmu.S:357:6: error: unknown token in expression pop %rdx # return address is no longer needed ^ jitc_mmu.S:357:6: error: Unexpected token! pop %rdx # return address is no longer needed ^ jitc_mmu.S:358:6: error: unknown token in expression pop %rbx # bytes to roll back ^ jitc_mmu.S:358:6: error: Unexpected token! pop %rbx # bytes to roll back ^ jitc_mmu.S:359:6: error: unknown token in expression add %rsp, %rbx ^ jitc_mmu.S:359:6: error: Unexpected token! add %rsp, %rbx ^ jitc_mmu.S:360:6: error: unknown token in expression mov %ecx, (1<<27) | (1<<25) # PPC_EXC_DSISR_PROT | PPC_EXC_DSISR_STORE ^ jitc_mmu.S:360:6: error: Unexpected token! 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:383:6: error: Unexpected token! mov %edx, %eax ^ jitc_mmu.S:384:6: error: unknown token in expression mov %ecx, %eax ^ jitc_mmu.S:384:6: error: Unexpected token! mov %ecx, %eax ^ jitc_mmu.S:385:6: error: unknown token in expression shr %edx, 12 ^ jitc_mmu.S:385:6: error: Unexpected token! shr %edx, 12 ^ jitc_mmu.S:386:6: error: unknown token in expression and %ecx, 0xfffff000 ^ jitc_mmu.S:386:6: error: Unexpected token! and %ecx, 0xfffff000 ^ jitc_mmu.S:387:6: error: unknown token in expression and %edx, 32 -1 ^ jitc_mmu.S:387:6: error: Unexpected token! and %edx, 32 -1 ^ jitc_mmu.S:388:7: error: Unexpected token! mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx ^ jitc_mmu.S:388:7: error: unexpected token in argument list mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx ^ jitc_mmu.S:389:17: error: Unexpected token! mov dword ptr [%rdi+tlb_code_0_phys + %rdx*4], 0 ^ jitc_mmu.S:389:17: error: unexpected token in argument list 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:6: error: Unexpected token! 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:22: error: Unexpected token! 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:38: error: Unexpected token! 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:52: error: Unexpected token! 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:74: error: Unexpected token! 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:91: error: Unexpected token! 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:135: error: Unexpected token! 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:129: error: invalid operand for instruction 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:401:141: error: Unexpected token! 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: Unexpected token! test byte ptr [%rdi+msr], (1<<5) # MSR_IR ^ jitc_mmu.S:403:17: error: unexpected token in argument list 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:6: error: Unexpected token! 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:38: error: Unexpected token! 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:72: error: Unexpected token! 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:88: error: Unexpected token! 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:106: error: Unexpected token! 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:100: error: invalid operand for instruction 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: Unexpected token! 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: unexpected token in argument list 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:141: error: Unexpected token! 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:155: error: Unexpected token! 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: Unexpected token! 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: unexpected token in argument list 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:202: error: Unexpected token! 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:197: error: invalid operand for instruction 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:208: error: Unexpected token! 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:224: error: Unexpected token! 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:240: error: Unexpected token! 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:262: error: Unexpected token! 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:294: error: Unexpected token! 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:328: error: Unexpected token! 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:342: error: Unexpected token! 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:358: error: Unexpected token! 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:374: error: Unexpected token! 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:407: error: Unexpected token! 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:433: error: Unexpected token! 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:428: error: invalid operand for instruction 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:439: error: Unexpected token! 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:472: error: Unexpected token! 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: Unexpected token! 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: unexpected token in argument list 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: Unexpected token! 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: unexpected token in argument list 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:589: error: Unexpected token! 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:625: error: Unexpected token! 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:649: error: Unexpected token! 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:643: error: unknown use of instruction mnemonic without a size suffix 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:655: error: Unexpected token! 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:678: error: Unexpected token! 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:673: error: invalid operand for instruction 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:684: error: Unexpected token! 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:406:706: error: Unexpected token! 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:734: error: Unexpected token! 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:728: error: unknown use of instruction mnemonic without a size suffix 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:6: error: Unexpected token! 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:38: error: Unexpected token! 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:72: error: Unexpected token! 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:88: error: Unexpected token! 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:106: error: Unexpected token! 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:100: error: invalid operand for instruction 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: Unexpected token! 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: unexpected token in argument list 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:141: error: Unexpected token! 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:155: error: Unexpected token! 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: Unexpected token! 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: unexpected token in argument list 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:202: error: Unexpected token! 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:197: error: invalid operand for instruction 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:208: error: Unexpected token! 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:224: error: Unexpected token! 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:240: error: Unexpected token! 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:262: error: Unexpected token! 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:294: error: Unexpected token! 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:328: error: Unexpected token! 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:342: error: Unexpected token! 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:358: error: Unexpected token! 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:374: error: Unexpected token! 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:407: error: Unexpected token! 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:433: error: Unexpected token! 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:428: error: invalid operand for instruction 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:439: error: Unexpected token! 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:472: error: Unexpected token! 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: Unexpected token! 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: unexpected token in argument list 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: Unexpected token! 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: unexpected token in argument list 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:589: error: Unexpected token! 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:625: error: Unexpected token! 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:649: error: Unexpected token! 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:643: error: unknown use of instruction mnemonic without a size suffix 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:655: error: Unexpected token! 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:678: error: Unexpected token! 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:673: error: invalid operand for instruction 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:684: error: Unexpected token! 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:407:706: error: Unexpected token! 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:734: error: Unexpected token! 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:728: error: unknown use of instruction mnemonic without a size suffix 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:6: error: Unexpected token! 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:38: error: Unexpected token! 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:72: error: Unexpected token! 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:88: error: Unexpected token! 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:106: error: Unexpected token! 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:100: error: invalid operand for instruction 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: Unexpected token! 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: unexpected token in argument list 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:141: error: Unexpected token! 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:155: error: Unexpected token! 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: Unexpected token! 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: unexpected token in argument list 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:202: error: Unexpected token! 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:197: error: invalid operand for instruction 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:208: error: Unexpected token! 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:224: error: Unexpected token! 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:240: error: Unexpected token! 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:262: error: Unexpected token! 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:294: error: Unexpected token! 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:328: error: Unexpected token! 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:342: error: Unexpected token! 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:358: error: Unexpected token! 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:374: error: Unexpected token! 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:407: error: Unexpected token! 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:433: error: Unexpected token! 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:428: error: invalid operand for instruction 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:439: error: Unexpected token! 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:472: error: Unexpected token! 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: Unexpected token! 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: unexpected token in argument list 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: Unexpected token! 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: unexpected token in argument list 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:589: error: Unexpected token! 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:625: error: Unexpected token! 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:649: error: Unexpected token! 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:643: error: unknown use of instruction mnemonic without a size suffix 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:655: error: Unexpected token! 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:678: error: Unexpected token! 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:673: error: invalid operand for instruction 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:684: error: Unexpected token! 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:408:706: error: Unexpected token! 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:734: error: Unexpected token! 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:728: error: unknown use of instruction mnemonic without a size suffix 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:6: error: Unexpected token! 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:38: error: Unexpected token! 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:72: error: Unexpected token! 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:88: error: Unexpected token! 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:106: error: Unexpected token! 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:100: error: invalid operand for instruction 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: Unexpected token! 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: unexpected token in argument list 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:141: error: Unexpected token! 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:155: error: Unexpected token! 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: Unexpected token! 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: unexpected token in argument list 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:202: error: Unexpected token! 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:197: error: invalid operand for instruction 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:208: error: Unexpected token! 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:224: error: Unexpected token! 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:240: error: Unexpected token! 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:262: error: Unexpected token! 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:294: error: Unexpected token! 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:328: error: Unexpected token! 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:342: error: Unexpected token! 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:358: error: Unexpected token! 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:374: error: Unexpected token! 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:407: error: Unexpected token! 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:433: error: Unexpected token! 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:428: error: invalid operand for instruction 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:439: error: Unexpected token! 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:472: error: Unexpected token! 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: Unexpected token! 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: unexpected token in argument list 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: Unexpected token! 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: unexpected token in argument list 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:589: error: Unexpected token! 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:625: error: Unexpected token! 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:649: error: Unexpected token! 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:643: error: unknown use of instruction mnemonic without a size suffix 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:655: error: Unexpected token! 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:678: error: Unexpected token! 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:673: error: invalid operand for instruction 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:684: error: Unexpected token! 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:409:706: error: Unexpected token! 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:734: error: Unexpected token! 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:728: error: unknown use of instruction mnemonic without a size suffix 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:411:6: error: Unexpected token! mov %ebx, %eax ^ jitc_mmu.S:412:6: error: unknown token in expression shr %ebx, 28 # SR ^ jitc_mmu.S:412:6: error: Unexpected token! shr %ebx, 28 # SR ^ jitc_mmu.S:413:6: error: unknown token in expression mov %edx, [%rdi+sr+4*%rbx] ^ jitc_mmu.S:413:6: error: Unexpected token! mov %edx, [%rdi+sr+4*%rbx] ^ jitc_mmu.S:418:7: error: unknown token in expression test %edx, (1<<28) # SR_N ^ jitc_mmu.S:418:7: error: Unexpected token! test %edx, (1<<28) # SR_N ^ jitc_mmu.S:419:8: error: Unexpected token! jnz 9f ^ jitc_mmu.S:419:2: error: invalid operand for instruction jnz 9f ^ jitc_mmu.S:421:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:421:6: error: Unexpected token! mov %ebx, %eax ^ jitc_mmu.S:422:6: error: unknown token in expression mov %r12d, %edx ^ jitc_mmu.S:422:6: error: Unexpected token! mov %r12d, %edx ^ jitc_mmu.S:423:6: error: unknown token in expression shr %ebx, 12 ^ jitc_mmu.S:423:6: error: Unexpected token! shr %ebx, 12 ^ jitc_mmu.S:424:6: error: unknown token in expression mov %r8d, %eax ^ jitc_mmu.S:424:6: error: Unexpected token! mov %r8d, %eax ^ jitc_mmu.S:425:6: error: unknown token in expression and %ebx, 0xffff ^ jitc_mmu.S:425:6: error: Unexpected token! and %ebx, 0xffff ^ jitc_mmu.S:426:6: error: unknown token in expression shr %r8d, 22 ^ jitc_mmu.S:426:6: error: Unexpected token! shr %r8d, 22 ^ jitc_mmu.S:427:6: error: unknown token in expression and %r12d, 0xffffff ^ jitc_mmu.S:427:6: error: Unexpected token! and %r12d, 0xffffff ^ jitc_mmu.S:428:6: error: unknown token in expression and %r8d, 0x3f ^ jitc_mmu.S:428:6: error: Unexpected token! and %r8d, 0x3f ^ jitc_mmu.S:441:6: error: unknown token in expression xor %ebx, %r12d ^ jitc_mmu.S:441:6: error: Unexpected token! xor %ebx, %r12d ^ jitc_mmu.S:446:7: error: unknown token in expression push %rax ^ jitc_mmu.S:446:7: error: Unexpected token! push %rax ^ jitc_mmu.S:447:7: error: unknown token in expression push %rbx # das brauch ich ^ jitc_mmu.S:447:7: error: Unexpected token! push %rbx # das brauch ich ^ jitc_mmu.S:449:6: error: unknown token in expression and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:449:6: error: Unexpected token! and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:450:6: error: unknown token in expression shl %ebx, 6 ^ jitc_mmu.S:450:6: error: Unexpected token! shl %ebx, 6 ^ jitc_mmu.S:451:5: error: unknown token in expression or %ebx, [%rdi+pagetable_base] ^ jitc_mmu.S:451:5: error: Unexpected token! or %ebx, [%rdi+pagetable_base] ^ jitc_mmu.S:456: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:456:6: error: Unexpected token! 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:456: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:456:27: error: Unexpected token! 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:456: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:456:58: error: Unexpected token! 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:456: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:456:68: error: Unexpected token! 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:456: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:456:84: error: Unexpected token! 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:456: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:456:112: error: Unexpected token! 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:456:139: error: Unexpected token! 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:456:133: error: invalid operand for instruction 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:456: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:456:145: error: Unexpected token! 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:456: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:456:161: error: Unexpected token! 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:456: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:456:174: error: Unexpected token! 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:456: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:456:194: error: Unexpected token! 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:456:213: error: Unexpected token! 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:456:207: error: invalid operand for instruction 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:456: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:456:219: error: Unexpected token! 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:456: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:456:235: error: Unexpected token! 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:456:253: error: Unexpected token! 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:456:247: error: invalid operand for instruction 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:456: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:456:259: error: Unexpected token! 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:456: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:456:280: error: Unexpected token! 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:456: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:456:315: error: Unexpected token! 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:456:337: error: Unexpected token! 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:456:337: error: unexpected token in argument list 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:456: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:456:361: error: Unexpected token! 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:456: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:456:381: error: Unexpected token! 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:456: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:456:390: error: Unexpected token! 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:456: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:456:406: error: Unexpected token! 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:456: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:456:424: error: Unexpected token! 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:456: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:456:435: error: Unexpected token! 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:456: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:456:450: error: Unexpected token! 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:456: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:456:466: error: Unexpected token! 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:456:518: error: Unexpected token! 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:456:518: error: unexpected token in argument list 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:456: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:456:549: error: Unexpected token! 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:456: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:456:567: error: Unexpected token! 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:456: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:456:606: error: Unexpected token! 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:456: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:456:631: error: Unexpected token! 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:456: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:456:692: error: Unexpected token! 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:456: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:456:702: error: Unexpected token! 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:456:724: error: Unexpected token! 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:456:724: error: unexpected token in argument list 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:456: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:456:745: error: Unexpected token! 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:456: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:456:767: error: Unexpected token! 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:456: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:456:783: error: Unexpected token! 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:456: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:456:799: error: Unexpected token! 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:456: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:456:813: error: Unexpected token! 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:456: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:456:835: error: Unexpected token! 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:456: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:456:852: error: Unexpected token! 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:456: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:456:868: error: Unexpected token! 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:456: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:456: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:456:900: error: Unexpected token! 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:456:926: error: Unexpected token! 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:456:921: error: invalid operand for instruction 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:456: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:456:932: error: Unexpected token! 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:456:966: error: Unexpected token! 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:456:966: error: unexpected token in argument list 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:456:1008: error: Unexpected token! 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:456:1008: error: unexpected token in argument list 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:456: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:456:1050: error: Unexpected token! 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:456: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:456: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:456:1097: error: Unexpected token! 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:456:1121: error: Unexpected token! 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:456:1115: error: unknown use of instruction mnemonic without a size suffix 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:456: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:456:1127: error: Unexpected token! 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:456:1150: error: Unexpected token! 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:456:1145: error: invalid operand for instruction 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:456: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:456:1180: error: Unexpected token! 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:456: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:456:1206: error: Unexpected token! 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:456:1230: error: Unexpected token! 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:456:1224: error: unknown use of instruction mnemonic without a size suffix 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:456: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:456:1239: error: Unexpected token! 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:457: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:457:6: error: Unexpected token! 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:457: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:457:27: error: Unexpected token! 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:457: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:457:58: error: Unexpected token! 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:457: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:457:68: error: Unexpected token! 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:457: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:457:84: error: Unexpected token! 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:457: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:457:112: error: Unexpected token! 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:457:139: error: Unexpected token! 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:457:133: error: invalid operand for instruction 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:457: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:457:145: error: Unexpected token! 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:457: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:457:161: error: Unexpected token! 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:457: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:457:174: error: Unexpected token! 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:457: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:457:194: error: Unexpected token! 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:457:213: error: Unexpected token! 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:457:207: error: invalid operand for instruction 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:457: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:457:219: error: Unexpected token! 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:457: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:457:235: error: Unexpected token! 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:457:253: error: Unexpected token! 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:457:247: error: invalid operand for instruction 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:457: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:457:259: error: Unexpected token! 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:457: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:457:280: error: Unexpected token! 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:457: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:457:315: error: Unexpected token! 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:457:337: error: Unexpected token! 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:457:337: error: unexpected token in argument list 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:457: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:457:361: error: Unexpected token! 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:457: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:457:381: error: Unexpected token! 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:457: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:457:390: error: Unexpected token! 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:457: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:457:406: error: Unexpected token! 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:457: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:457:424: error: Unexpected token! 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:457: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:457:435: error: Unexpected token! 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:457: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:457:450: error: Unexpected token! 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:457: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:457:466: error: Unexpected token! 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:457:518: error: Unexpected token! 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:457:518: error: unexpected token in argument list 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:457: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:457:549: error: Unexpected token! 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:457: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:457:567: error: Unexpected token! 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:457: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:457:606: error: Unexpected token! 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:457: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:457:631: error: Unexpected token! 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:457: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:457:692: error: Unexpected token! 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:457: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:457:702: error: Unexpected token! 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:457:724: error: Unexpected token! 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:457:724: error: unexpected token in argument list 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:457: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:457:745: error: Unexpected token! 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:457: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:457:767: error: Unexpected token! 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:457: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:457:783: error: Unexpected token! 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:457: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:457:799: error: Unexpected token! 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:457: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:457:813: error: Unexpected token! 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:457: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:457:835: error: Unexpected token! 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:457: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:457:852: error: Unexpected token! 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:457: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:457:868: error: Unexpected token! 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:457: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:457: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:457:900: error: Unexpected token! 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:457:926: error: Unexpected token! 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:457:921: error: invalid operand for instruction 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:457: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:457:932: error: Unexpected token! 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:457:966: error: Unexpected token! 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:457:966: error: unexpected token in argument list 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:457:1008: error: Unexpected token! 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:457:1008: error: unexpected token in argument list 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:457: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:457:1050: error: Unexpected token! 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:457: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_mmu.S:457: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_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:457:1097: error: Unexpected token! 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:457:1121: error: Unexpected token! 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:457:1115: error: unknown use of instruction mnemonic without a size suffix 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:457: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_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:457:1127: error: Unexpected token! 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:457:1150: error: Unexpected token! 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:457:1145: error: invalid operand for instruction 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:457: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_code; mov %edx, %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:457:1180: error: Unexpected token! 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:457: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_code; mov %edx, %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:457:1206: error: Unexpected token! 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:457:1230: error: Unexpected token! 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:457:1224: error: unknown use of instruction mnemonic without a size suffix 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:457: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_mmu.S:457:1239: error: Unexpected token! 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:458: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_code; mov %edx, %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:458:6: error: Unexpected token! 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:458: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:458:27: error: Unexpected token! 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:458: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_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:458:59: error: Unexpected token! 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:458: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_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:458:69: error: Unexpected token! 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:458: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_mmu.S:458:85: error: Unexpected token! 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:458: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_code; mov %edx, %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:458:113: error: Unexpected token! 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:458:140: error: Unexpected token! 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:458:134: error: invalid operand for instruction 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:458: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_mmu.S:458:146: error: Unexpected token! 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:458: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_code; mov %edx, %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:458:162: error: Unexpected token! 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:458: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:458:175: error: Unexpected token! 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:458: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_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:458:195: error: Unexpected token! 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:458:214: error: Unexpected token! 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:458:208: error: invalid operand for instruction 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:458: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_code; mov %edx, %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:458:220: error: Unexpected token! 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:458: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_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:458:236: error: Unexpected token! 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:458:254: error: Unexpected token! 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:458:248: error: invalid operand for instruction 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:458: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_code; mov %edx, %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:458:260: error: Unexpected token! 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:458: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_code; mov %edx, %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:458:281: error: Unexpected token! 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:458: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_code; mov %edx, %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:458:317: error: Unexpected token! 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:458:339: error: Unexpected token! 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:458:339: error: unexpected token in argument list 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:458: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_code; mov %edx, %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:458:363: error: Unexpected token! 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:458: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_code; mov %edx, %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:458:383: error: Unexpected token! 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:458: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_code; mov %edx, %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:458:392: error: Unexpected token! 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:458: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_code; mov %edx, %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:458:408: error: Unexpected token! 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:458: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_code; mov %edx, %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:458:426: error: Unexpected token! 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:458: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_code; mov %edx, %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:458:437: error: Unexpected token! 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:458: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_code; mov %edx, %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:458:452: error: Unexpected token! 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:458: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_code; mov %edx, %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:458:468: error: Unexpected token! 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:458:520: error: Unexpected token! 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:458:520: error: unexpected token in argument list 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:458: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_code; mov %edx, %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:458:551: error: Unexpected token! 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:458: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_code; mov %edx, %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:458:569: error: Unexpected token! 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:458: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:458:608: error: Unexpected token! 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:458: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:458:633: error: Unexpected token! 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:458: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:458:694: error: Unexpected token! 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:458: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:458:704: error: Unexpected token! 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:458:726: error: Unexpected token! 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:458:726: error: unexpected token in argument list 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:458: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:458:748: error: Unexpected token! 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:458: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:458:770: error: Unexpected token! 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:458: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:458:786: error: Unexpected token! 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:458: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_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:458:802: error: Unexpected token! 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:458: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:458:816: error: Unexpected token! 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:458: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:458:838: error: Unexpected token! 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:458: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:458:855: error: Unexpected token! 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:458: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:458:871: error: Unexpected token! 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:458: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:458: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:458:903: error: Unexpected token! 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:458:929: error: Unexpected token! 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:458:924: error: invalid operand for instruction 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:458: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:458:935: error: Unexpected token! 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:458:969: error: Unexpected token! 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:458:969: error: unexpected token in argument list 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:458:1011: error: Unexpected token! 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:458:1011: error: unexpected token in argument list 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:458: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:458:1053: error: Unexpected token! 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:458: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:458: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:458:1100: error: Unexpected token! 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:458:1124: error: Unexpected token! 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:458:1118: error: unknown use of instruction mnemonic without a size suffix 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:458: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:458:1130: error: Unexpected token! 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:458:1153: error: Unexpected token! 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:458:1148: error: invalid operand for instruction 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:458: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:458:1183: error: Unexpected token! 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:458: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:458:1209: error: Unexpected token! 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:458:1233: error: Unexpected token! 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:458:1227: error: unknown use of instruction mnemonic without a size suffix 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:458: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:458:1242: error: Unexpected token! 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:459: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:459:6: error: Unexpected token! 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:459: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:459:27: error: Unexpected token! 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:459: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:459:59: error: Unexpected token! 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:459: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:459:69: error: Unexpected token! 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:459: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:459:85: error: Unexpected token! 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:459: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:459:113: error: Unexpected token! 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:459:140: error: Unexpected token! 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:459:134: error: invalid operand for instruction 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:459: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:459:146: error: Unexpected token! 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:459: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:459:162: error: Unexpected token! 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:459: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:459:175: error: Unexpected token! 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:459: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:459:195: error: Unexpected token! 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:459:214: error: Unexpected token! 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:459:208: error: invalid operand for instruction 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:459: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:459:220: error: Unexpected token! 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:459: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:459:236: error: Unexpected token! 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:459:254: error: Unexpected token! 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:459:248: error: invalid operand for instruction 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:459: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:459:260: error: Unexpected token! 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:459: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:459:281: error: Unexpected token! 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:459: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:459:317: error: Unexpected token! 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:459:339: error: Unexpected token! 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:459:339: error: unexpected token in argument list 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:459: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:459:363: error: Unexpected token! 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:459: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:459:383: error: Unexpected token! 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:459: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:459:392: error: Unexpected token! 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:459: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:459:408: error: Unexpected token! 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:459: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:459:426: error: Unexpected token! 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:459: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:459:437: error: Unexpected token! 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:459: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:459:452: error: Unexpected token! 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:459: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:459:468: error: Unexpected token! 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:459:520: error: Unexpected token! 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:459:520: error: unexpected token in argument list 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:459: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:459:551: error: Unexpected token! 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:459: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:459:569: error: Unexpected token! 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:459: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:459:608: error: Unexpected token! 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:459: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:459:633: error: Unexpected token! 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:459: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:459:694: error: Unexpected token! 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:459: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:459:704: error: Unexpected token! 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:459:726: error: Unexpected token! 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:459:726: error: unexpected token in argument list 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:459: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:459:748: error: Unexpected token! 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:459: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:459:770: error: Unexpected token! 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:459: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:459:786: error: Unexpected token! 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:459: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:459:802: error: Unexpected token! 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:459: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:459:816: error: Unexpected token! 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:459: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:459:838: error: Unexpected token! 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:459: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:459:855: error: Unexpected token! 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:459: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:459:871: error: Unexpected token! 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:459: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:459: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:459:903: error: Unexpected token! 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:459:929: error: Unexpected token! 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:459:924: error: invalid operand for instruction 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:459: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:459:935: error: Unexpected token! 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:459:969: error: Unexpected token! 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:459:969: error: unexpected token in argument list 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:459:1011: error: Unexpected token! 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:459:1011: error: unexpected token in argument list 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:459: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:459:1053: error: Unexpected token! 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:459: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:459: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:459:1100: error: Unexpected token! 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:459:1124: error: Unexpected token! 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:459:1118: error: unknown use of instruction mnemonic without a size suffix 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:459: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:459:1130: error: Unexpected token! 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:459:1153: error: Unexpected token! 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:459:1148: error: invalid operand for instruction 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:459: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:459:1183: error: Unexpected token! 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:459: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:459:1209: error: Unexpected token! 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:459:1233: error: Unexpected token! 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:459:1227: error: unknown use of instruction mnemonic without a size suffix 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:459: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:459:1242: error: Unexpected token! 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:460: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:460:6: error: Unexpected token! 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:460: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:460:27: error: Unexpected token! 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:460: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:460:59: error: Unexpected token! 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:460: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:460:69: error: Unexpected token! 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:460: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:460:85: error: Unexpected token! 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:460: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:460:113: error: Unexpected token! 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:460:140: error: Unexpected token! 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:460:134: error: invalid operand for instruction 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:460: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:460:146: error: Unexpected token! 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:460: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:460:162: error: Unexpected token! 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:460: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:460:175: error: Unexpected token! 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:460: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:460:195: error: Unexpected token! 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:460:214: error: Unexpected token! 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:460:208: error: invalid operand for instruction 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:460: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:460:220: error: Unexpected token! 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:460: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:460:236: error: Unexpected token! 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:460:254: error: Unexpected token! 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:460:248: error: invalid operand for instruction 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:460: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:460:260: error: Unexpected token! 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:460: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:460:281: error: Unexpected token! 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:460: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:460:317: error: Unexpected token! 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:460:339: error: Unexpected token! 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:460:339: error: unexpected token in argument list 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:460: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:460:363: error: Unexpected token! 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:460: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:460:383: error: Unexpected token! 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:460: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:460:392: error: Unexpected token! 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:460: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:460:408: error: Unexpected token! 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:460: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:460:426: error: Unexpected token! 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:460: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:460:437: error: Unexpected token! 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:460: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:460:452: error: Unexpected token! 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:460: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:460:468: error: Unexpected token! 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:460:520: error: Unexpected token! 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:460:520: error: unexpected token in argument list 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:460: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:460:551: error: Unexpected token! 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:460: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:460:569: error: Unexpected token! 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:460: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:460:608: error: Unexpected token! 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:460: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:460:633: error: Unexpected token! 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:460: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:460:694: error: Unexpected token! 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:460: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:460:704: error: Unexpected token! 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:460:726: error: Unexpected token! 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:460:726: error: unexpected token in argument list 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:460: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:460:748: error: Unexpected token! 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:460: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:460:770: error: Unexpected token! 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:460: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:460:786: error: Unexpected token! 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:460: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:460:802: error: Unexpected token! 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:460: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:460:816: error: Unexpected token! 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:460: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: ^ jitc_mmu.S:460:838: error: Unexpected token! 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:460: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:460:855: error: Unexpected token! 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:460: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:460:871: error: Unexpected token! 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:460: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_code; mov %edx, %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:460: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:460:903: error: Unexpected token! 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:460:929: error: Unexpected token! 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:460:924: error: invalid operand for instruction 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:460: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:460:935: error: Unexpected token! 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:460:969: error: Unexpected token! 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:460:969: error: unexpected token in argument list 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:460:1011: error: Unexpected token! 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:460:1011: error: unexpected token in argument list 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:460: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:460:1053: error: Unexpected token! 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:460: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:460: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:460:1100: error: Unexpected token! 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:460:1124: error: Unexpected token! 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:460:1118: error: unknown use of instruction mnemonic without a size suffix 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:460: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:460:1130: error: Unexpected token! 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:460:1153: error: Unexpected token! 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:460:1148: error: invalid operand for instruction 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:460: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:460:1183: error: Unexpected token! 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:460: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:460:1209: error: Unexpected token! 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:460:1233: error: Unexpected token! 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:460:1227: error: unknown use of instruction mnemonic without a size suffix 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:460: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:460:1242: error: Unexpected token! 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:461: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:461:6: error: Unexpected token! 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:461: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:461:27: error: Unexpected token! 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:461: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:461:59: error: Unexpected token! 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:461: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:461:69: error: Unexpected token! 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:461: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:461:85: error: Unexpected token! 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:461: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:461:113: error: Unexpected token! 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:461:140: error: Unexpected token! 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:461:134: error: invalid operand for instruction 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:461: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:461:146: error: Unexpected token! 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:461: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:461:162: error: Unexpected token! 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:461: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:461:175: error: Unexpected token! 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:461: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:461:195: error: Unexpected token! 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:461:214: error: Unexpected token! 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:461:208: error: invalid operand for instruction 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:461: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:461:220: error: Unexpected token! 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:461: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:461:236: error: Unexpected token! 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:461:254: error: Unexpected token! 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:461:248: error: invalid operand for instruction 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:461: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:461:260: error: Unexpected token! 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:461: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:461:281: error: Unexpected token! 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:461: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:461:317: error: Unexpected token! 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:461:339: error: Unexpected token! 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:461:339: error: unexpected token in argument list 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:461: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:461:363: error: Unexpected token! 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:461: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:461:383: error: Unexpected token! 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:461: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:461:392: error: Unexpected token! 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:461: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:461:408: error: Unexpected token! 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:461: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:461:426: error: Unexpected token! 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:461: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:461:437: error: Unexpected token! 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:461: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:461:452: error: Unexpected token! 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:461: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:461:468: error: Unexpected token! 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:461:520: error: Unexpected token! 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:461:520: error: unexpected token in argument list 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:461: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:461:551: error: Unexpected token! 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:461: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:461:569: error: Unexpected token! 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:461: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:461:608: error: Unexpected token! 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:461: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:461:633: error: Unexpected token! 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:461: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:461:694: error: Unexpected token! 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:461: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:461:704: error: Unexpected token! 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:461:726: error: Unexpected token! 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:461:726: error: unexpected token in argument list 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:461: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:461:748: error: Unexpected token! 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:461: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:461:770: error: Unexpected token! 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:461: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:461:786: error: Unexpected token! 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:461: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:461:802: error: Unexpected token! 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:461: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:461:816: error: Unexpected token! 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:461: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:461:838: error: Unexpected token! 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:461: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:461:855: error: Unexpected token! 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:461: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:461:871: error: Unexpected token! 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:461: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:461: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:461:903: error: Unexpected token! 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:461:929: error: Unexpected token! 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:461:924: error: invalid operand for instruction 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:461: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:461:935: error: Unexpected token! 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:461:969: error: Unexpected token! 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:461:969: error: unexpected token in argument list 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:461:1011: error: Unexpected token! 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:461:1011: error: unexpected token in argument list 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:461: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:461:1053: error: Unexpected token! 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:461: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:461: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:461:1100: error: Unexpected token! 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:461:1124: error: Unexpected token! 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:461:1118: error: unknown use of instruction mnemonic without a size suffix 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:461: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:461:1130: error: Unexpected token! 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:461:1153: error: Unexpected token! 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:461:1148: error: invalid operand for instruction 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:461: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:461:1183: error: Unexpected token! 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:461: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:461:1209: error: Unexpected token! 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:461:1233: error: Unexpected token! 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:461:1227: error: unknown use of instruction mnemonic without a size suffix 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:461: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:461:1242: error: Unexpected token! 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:462: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:462:6: error: Unexpected token! 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:462: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:462:27: error: Unexpected token! 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:462: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:462:59: error: Unexpected token! 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:462: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:462:69: error: Unexpected token! 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:462: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:462:85: error: Unexpected token! 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:462: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:462:113: error: Unexpected token! 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:462:140: error: Unexpected token! 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:462:134: error: invalid operand for instruction 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:462: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:462:146: error: Unexpected token! 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:462: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:462:162: error: Unexpected token! 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:462: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:462:175: error: Unexpected token! 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:462: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:462:195: error: Unexpected token! 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:462:214: error: Unexpected token! 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:462:208: error: invalid operand for instruction 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:462: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:462:220: error: Unexpected token! 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:462: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:462:236: error: Unexpected token! 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:462:254: error: Unexpected token! 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:462:248: error: invalid operand for instruction 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:462: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:462:260: error: Unexpected token! 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:462: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:462:281: error: Unexpected token! 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:462: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:462:317: error: Unexpected token! 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:462:339: error: Unexpected token! 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:462:339: error: unexpected token in argument list 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:462: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:462:363: error: Unexpected token! 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:462: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:462:383: error: Unexpected token! 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:462: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:462:392: error: Unexpected token! 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:462: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:462:408: error: Unexpected token! 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:462: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:462:426: error: Unexpected token! 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:462: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:462:437: error: Unexpected token! 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:462: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:462:452: error: Unexpected token! 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:462: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:462:468: error: Unexpected token! 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:462:520: error: Unexpected token! 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:462:520: error: unexpected token in argument list 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:462: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:462:551: error: Unexpected token! 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:462: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:462:569: error: Unexpected token! 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:462: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:462:608: error: Unexpected token! 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:462: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:462:633: error: Unexpected token! 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:462: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:462:694: error: Unexpected token! 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:462: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:462:704: error: Unexpected token! 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:462:726: error: Unexpected token! 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:462:726: error: unexpected token in argument list 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:462: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:462:748: error: Unexpected token! 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:462: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:462:770: error: Unexpected token! 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:462: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:462:786: error: Unexpected token! 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:462: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:462:802: error: Unexpected token! 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:462: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:462:816: error: Unexpected token! 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:462: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:462:838: error: Unexpected token! 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:462: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:462:855: error: Unexpected token! 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:462: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:462:871: error: Unexpected token! 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:462: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:462: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:462:903: error: Unexpected token! 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:462:929: error: Unexpected token! 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:462:924: error: invalid operand for instruction 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:462: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:462:935: error: Unexpected token! 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:462:969: error: Unexpected token! 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:462:969: error: unexpected token in argument list 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:462:1011: error: Unexpected token! 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:462:1011: error: unexpected token in argument list 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:462: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:462:1053: error: Unexpected token! 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:462: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:462: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:462:1100: error: Unexpected token! 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:462:1124: error: Unexpected token! 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:462:1118: error: unknown use of instruction mnemonic without a size suffix 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:462: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:462:1130: error: Unexpected token! 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:462:1153: error: Unexpected token! 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:462:1148: error: invalid operand for instruction 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:462: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:462:1183: error: Unexpected token! 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:462: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:462:1209: error: Unexpected token! 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:462:1233: error: Unexpected token! 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:462:1227: error: unknown use of instruction mnemonic without a size suffix 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:462: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:462:1242: error: Unexpected token! 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:463: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:463:6: error: Unexpected token! 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:463: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:463:27: error: Unexpected token! 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:463: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:463:59: error: Unexpected token! 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:463: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:463:69: error: Unexpected token! 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:463: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:463:85: error: Unexpected token! 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:463: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:463:113: error: Unexpected token! 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:463:140: error: Unexpected token! 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:463:134: error: invalid operand for instruction 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:463: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:463:146: error: Unexpected token! 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:463: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:463:162: error: Unexpected token! 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:463: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:463:175: error: Unexpected token! 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:463: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:463:195: error: Unexpected token! 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:463:214: error: Unexpected token! 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:463:208: error: invalid operand for instruction 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:463: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:463:220: error: Unexpected token! 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:463: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:463:236: error: Unexpected token! 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:463:254: error: Unexpected token! 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:463:248: error: invalid operand for instruction 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:463: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:463:260: error: Unexpected token! 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:463: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:463:281: error: Unexpected token! 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:463: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:463:317: error: Unexpected token! 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:463:339: error: Unexpected token! 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:463:339: error: unexpected token in argument list 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:463: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:463:363: error: Unexpected token! 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:463: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:463:383: error: Unexpected token! 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:463: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:463:392: error: Unexpected token! 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:463: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:463:408: error: Unexpected token! 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:463: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:463:426: error: Unexpected token! 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:463: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:463:437: error: Unexpected token! 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:463: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:463:452: error: Unexpected token! 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:463: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:463:468: error: Unexpected token! 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:463:520: error: Unexpected token! 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:463:520: error: unexpected token in argument list 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:463: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:463:551: error: Unexpected token! 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:463: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:463:569: error: Unexpected token! 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:463: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:463:608: error: Unexpected token! 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:463: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:463:633: error: Unexpected token! 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:463: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:463:694: error: Unexpected token! 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:463: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:463:704: error: Unexpected token! 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:463:726: error: Unexpected token! 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:463:726: error: unexpected token in argument list 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:463: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:463:748: error: Unexpected token! 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:463: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:463:770: error: Unexpected token! 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:463: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:463:786: error: Unexpected token! 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:463: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:463:802: error: Unexpected token! 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:463: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:463:816: error: Unexpected token! 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:463: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:463:838: error: Unexpected token! 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:463: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:463:855: error: Unexpected token! 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:463: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:463:871: error: Unexpected token! 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:463: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:463: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:463:903: error: Unexpected token! 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:463:929: error: Unexpected token! 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:463:924: error: invalid operand for instruction 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:463: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:463:935: error: Unexpected token! 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:463:969: error: Unexpected token! 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:463:969: error: unexpected token in argument list 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:463:1011: error: Unexpected token! 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:463:1011: error: unexpected token in argument list 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:463: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:463:1053: error: Unexpected token! 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:463: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:463: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:463:1100: error: Unexpected token! 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:463:1124: error: Unexpected token! 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:463:1118: error: unknown use of instruction mnemonic without a size suffix 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:463: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:463:1130: error: Unexpected token! 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:463:1153: error: Unexpected token! 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:463:1148: error: invalid operand for instruction 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:463: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:463:1183: error: Unexpected token! 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:463: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:463:1209: error: Unexpected token! 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:463:1233: error: Unexpected token! 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:463:1227: error: unknown use of instruction mnemonic without a size suffix 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:463: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: ^ jitc_mmu.S:463:1242: error: Unexpected token! 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:467:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:467:6: error: Unexpected token! pop %rbx ^ jitc_mmu.S:468:6: error: unknown token in expression not %ebx ^ jitc_mmu.S:468:6: error: Unexpected token! not %ebx ^ jitc_mmu.S:469:6: error: unknown token in expression and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:469:6: error: Unexpected token! and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:470:6: error: unknown token in expression shl %ebx, 6 ^ jitc_mmu.S:470:6: error: Unexpected token! shl %ebx, 6 ^ jitc_mmu.S:471:5: error: unknown token in expression or %ebx, [%rdi+pagetable_base] ^ jitc_mmu.S:471:5: error: Unexpected token! or %ebx, [%rdi+pagetable_base] ^ jitc_mmu.S:473: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:473:6: error: Unexpected token! 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:473: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:473:27: error: Unexpected token! 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:473: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:473:58: error: Unexpected token! 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:473: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:473:68: error: Unexpected token! 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:473: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:473:84: error: Unexpected token! 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:473: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:473:112: error: Unexpected token! 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:473:142: error: Unexpected token! 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:473:136: error: invalid operand for instruction 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:473: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:473:148: error: Unexpected token! 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:473: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:473:164: error: Unexpected token! 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:473: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:473:177: error: Unexpected token! 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:473: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:473:197: error: Unexpected token! 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:473:216: error: Unexpected token! 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:473:210: error: invalid operand for instruction 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:473: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:473:222: error: Unexpected token! 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:473: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:473:238: error: Unexpected token! 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:473:256: error: Unexpected token! 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:473:250: error: invalid operand for instruction 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:473: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:473:262: error: Unexpected token! 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:473: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:473:283: error: Unexpected token! 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:473: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:473:318: error: Unexpected token! 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:473:340: error: Unexpected token! 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:473:340: error: unexpected token in argument list 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:473: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:473:364: error: Unexpected token! 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:473: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:473:384: error: Unexpected token! 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:473: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:473:393: error: Unexpected token! 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:473: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:473:409: error: Unexpected token! 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:473: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:473:427: error: Unexpected token! 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:473: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:473:438: error: Unexpected token! 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:473: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:473:453: error: Unexpected token! 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:473: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:473:469: error: Unexpected token! 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:473:521: error: Unexpected token! 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:473:521: error: unexpected token in argument list 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:473: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:473:573: error: Unexpected token! 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:473: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:473:612: error: Unexpected token! 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:473: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:473:637: error: Unexpected token! 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:473: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:473:698: error: Unexpected token! 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:473: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:473:708: error: Unexpected token! 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:473:730: error: Unexpected token! 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:473:730: error: unexpected token in argument list 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:473: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:473:751: error: Unexpected token! 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:473: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:473:773: error: Unexpected token! 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:473: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:473:789: error: Unexpected token! 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:473: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:473:805: error: Unexpected token! 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:473: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:473:819: error: Unexpected token! 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:473: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:473:841: error: Unexpected token! 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:473: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:473:858: error: Unexpected token! 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:473: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:473:874: error: Unexpected token! 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:473: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:473: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:473:906: error: Unexpected token! 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:473:932: error: Unexpected token! 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:473:927: error: invalid operand for instruction 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:473: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:473:938: error: Unexpected token! 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:473:972: error: Unexpected token! 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:473:972: error: unexpected token in argument list 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:473:1014: error: Unexpected token! 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:473:1014: error: unexpected token in argument list 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:473: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:473:1056: error: Unexpected token! 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:473: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:473: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:473:1103: error: Unexpected token! 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:473:1127: error: Unexpected token! 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:473:1121: error: unknown use of instruction mnemonic without a size suffix 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:473: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:473:1133: error: Unexpected token! 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:473:1156: error: Unexpected token! 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:473:1151: error: invalid operand for instruction 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:473: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:473:1186: error: Unexpected token! 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:473: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:473:1212: error: Unexpected token! 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:473:1236: error: Unexpected token! 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:473:1230: error: unknown use of instruction mnemonic without a size suffix 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:473: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:473:1245: error: Unexpected token! 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:474: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:474:6: error: Unexpected token! 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:474: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:474:27: error: Unexpected token! 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:474: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:474:58: error: Unexpected token! 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:474: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:474:68: error: Unexpected token! 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:474: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:474:84: error: Unexpected token! 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:474: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:474:112: error: Unexpected token! 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:474:142: error: Unexpected token! 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:474:136: error: invalid operand for instruction 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:474: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:474:148: error: Unexpected token! 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:474: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:474:164: error: Unexpected token! 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:474: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:474:177: error: Unexpected token! 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:474: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:474:197: error: Unexpected token! 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:474:216: error: Unexpected token! 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:474:210: error: invalid operand for instruction 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:474: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:474:222: error: Unexpected token! 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:474: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:474:238: error: Unexpected token! 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:474:256: error: Unexpected token! 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:474:250: error: invalid operand for instruction 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:474: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:474:262: error: Unexpected token! 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:474: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:474:283: error: Unexpected token! 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:474: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:474:318: error: Unexpected token! 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:474:340: error: Unexpected token! 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:474:340: error: unexpected token in argument list 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:474: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:474:364: error: Unexpected token! 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:474: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:474:384: error: Unexpected token! 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:474: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:474:393: error: Unexpected token! 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:474: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:474:409: error: Unexpected token! 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:474: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:474:427: error: Unexpected token! 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:474: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:474:438: error: Unexpected token! 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:474: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:474:453: error: Unexpected token! 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:474: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:474:469: error: Unexpected token! 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:474:521: error: Unexpected token! 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:474:521: error: unexpected token in argument list 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:474: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:474:573: error: Unexpected token! 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:474: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:474:612: error: Unexpected token! 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:474: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:474:637: error: Unexpected token! 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:474: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:474:698: error: Unexpected token! 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:474: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:474:708: error: Unexpected token! 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:474:730: error: Unexpected token! 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:474:730: error: unexpected token in argument list 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:474: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:474:751: error: Unexpected token! 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:474: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:474:773: error: Unexpected token! 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:474: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:474:789: error: Unexpected token! 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:474: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:474:805: error: Unexpected token! 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:474: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:474:819: error: Unexpected token! 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:474: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:474:841: error: Unexpected token! 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:474: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:474:858: error: Unexpected token! 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:474: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:474:874: error: Unexpected token! 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:474: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:474: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:474:906: error: Unexpected token! 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:474:932: error: Unexpected token! 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:474:927: error: invalid operand for instruction 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:474: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:474:938: error: Unexpected token! 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:474:972: error: Unexpected token! 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:474:972: error: unexpected token in argument list 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:474:1014: error: Unexpected token! 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:474:1014: error: unexpected token in argument list 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:474: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:474:1056: error: Unexpected token! 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:474: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:474: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:474:1103: error: Unexpected token! 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:474:1127: error: Unexpected token! 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:474:1121: error: unknown use of instruction mnemonic without a size suffix 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:474: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:474:1133: error: Unexpected token! 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:474:1156: error: Unexpected token! 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:474:1151: error: invalid operand for instruction 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:474: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:474:1186: error: Unexpected token! 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:474: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:474:1212: error: Unexpected token! 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:474:1236: error: Unexpected token! 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:474:1230: error: unknown use of instruction mnemonic without a size suffix 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:474: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:474:1245: error: Unexpected token! 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:475: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:475:6: error: Unexpected token! 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:475: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:475:27: error: Unexpected token! 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:475: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:475:59: error: Unexpected token! 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:475: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:475:69: error: Unexpected token! 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:475: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:475:85: error: Unexpected token! 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:475: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:475:113: error: Unexpected token! 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:475:143: error: Unexpected token! 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:475:137: error: invalid operand for instruction 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:475: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:475:149: error: Unexpected token! 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:475: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:475:165: error: Unexpected token! 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:475: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:475:178: error: Unexpected token! 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:475: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:475:198: error: Unexpected token! 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:475:217: error: Unexpected token! 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:475:211: error: invalid operand for instruction 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:475: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:475:223: error: Unexpected token! 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:475: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:475:239: error: Unexpected token! 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:475:257: error: Unexpected token! 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:475:251: error: invalid operand for instruction 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:475: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:475:263: error: Unexpected token! 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:475: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:475:284: error: Unexpected token! 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:475: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:475:320: error: Unexpected token! 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:475:342: error: Unexpected token! 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:475:342: error: unexpected token in argument list 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:475: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:475:366: error: Unexpected token! 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:475: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:475:386: error: Unexpected token! 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:475: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:475:395: error: Unexpected token! 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:475: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:475:411: error: Unexpected token! 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:475: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:475:429: error: Unexpected token! 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:475: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:475:440: error: Unexpected token! 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:475: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:475:455: error: Unexpected token! 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:475: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:475:471: error: Unexpected token! 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:475:523: error: Unexpected token! 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:475:523: error: unexpected token in argument list 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:475: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:475:575: error: Unexpected token! 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:475: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:475:614: error: Unexpected token! 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:475: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:475:639: error: Unexpected token! 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:475: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:475:700: error: Unexpected token! 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:475: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:475:710: error: Unexpected token! 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:475:732: error: Unexpected token! 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:475:732: error: unexpected token in argument list 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:475: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:475:754: error: Unexpected token! 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:475: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:475:776: error: Unexpected token! 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:475: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:475:792: error: Unexpected token! 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:475: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:475:808: error: Unexpected token! 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:475: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:475:822: error: Unexpected token! 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:475: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:475:844: error: Unexpected token! 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:475: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:475:861: error: Unexpected token! 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:475: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:475:877: error: Unexpected token! 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:475: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:475: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:475:909: error: Unexpected token! 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:475:935: error: Unexpected token! 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:475:930: error: invalid operand for instruction 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:475: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:475:941: error: Unexpected token! 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:475:975: error: Unexpected token! 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:475:975: error: unexpected token in argument list 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:475:1017: error: Unexpected token! 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:475:1017: error: unexpected token in argument list 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:475: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:475:1059: error: Unexpected token! 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:475: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:475: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:475:1106: error: Unexpected token! 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:475:1130: error: Unexpected token! 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:475:1124: error: unknown use of instruction mnemonic without a size suffix 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:475: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:475:1136: error: Unexpected token! 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:475:1159: error: Unexpected token! 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:475:1154: error: invalid operand for instruction 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:475: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:475:1189: error: Unexpected token! 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:475: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:475:1215: error: Unexpected token! 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:475:1239: error: Unexpected token! 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:475:1233: error: unknown use of instruction mnemonic without a size suffix 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:475: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:475:1248: error: Unexpected token! 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:476: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:476:6: error: Unexpected token! 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:476: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:476:27: error: Unexpected token! 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:476: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:476:59: error: Unexpected token! 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:476: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:476:69: error: Unexpected token! 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:476: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:476:85: error: Unexpected token! 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:476: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:476:113: error: Unexpected token! 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:476:143: error: Unexpected token! 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:476:137: error: invalid operand for instruction 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:476: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:476:149: error: Unexpected token! 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:476: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:476:165: error: Unexpected token! 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:476: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:476:178: error: Unexpected token! 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:476: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:476:198: error: Unexpected token! 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:476:217: error: Unexpected token! 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:476:211: error: invalid operand for instruction 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:476: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:476:223: error: Unexpected token! 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:476: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:476:239: error: Unexpected token! 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:476:257: error: Unexpected token! 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:476:251: error: invalid operand for instruction 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:476: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:476:263: error: Unexpected token! 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:476: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:476:284: error: Unexpected token! 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:476: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:476:320: error: Unexpected token! 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:476:342: error: Unexpected token! 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:476:342: error: unexpected token in argument list 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:476: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:476:366: error: Unexpected token! 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:476: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:476:386: error: Unexpected token! 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:476: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:476:395: error: Unexpected token! 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:476: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:476:411: error: Unexpected token! 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:476: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:476:429: error: Unexpected token! 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:476: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:476:440: error: Unexpected token! 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:476: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:476:455: error: Unexpected token! 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:476: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:476:471: error: Unexpected token! 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:476:523: error: Unexpected token! 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:476:523: error: unexpected token in argument list 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:476: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:476:575: error: Unexpected token! 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:476: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:476:614: error: Unexpected token! 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:476: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:476:639: error: Unexpected token! 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:476: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:476:700: error: Unexpected token! 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:476: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:476:710: error: Unexpected token! 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:476:732: error: Unexpected token! 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:476:732: error: unexpected token in argument list 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:476: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:476:754: error: Unexpected token! 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:476: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:476:776: error: Unexpected token! 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:476: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:476:792: error: Unexpected token! 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:476: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:476:808: error: Unexpected token! 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:476: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:476:822: error: Unexpected token! 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:476: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:476:844: error: Unexpected token! 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:476: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:476:861: error: Unexpected token! 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:476: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:476:877: error: Unexpected token! 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:476: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:476: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:476:909: error: Unexpected token! 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:476:935: error: Unexpected token! 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:476:930: error: invalid operand for instruction 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:476: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:476:941: error: Unexpected token! 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:476:975: error: Unexpected token! 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:476:975: error: unexpected token in argument list 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:476:1017: error: Unexpected token! 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:476:1017: error: unexpected token in argument list 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:476: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:476:1059: error: Unexpected token! 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:476: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:476: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:476:1106: error: Unexpected token! 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:476:1130: error: Unexpected token! 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:476:1124: error: unknown use of instruction mnemonic without a size suffix 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:476: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:476:1136: error: Unexpected token! 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:476:1159: error: Unexpected token! 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:476:1154: error: invalid operand for instruction 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:476: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:476:1189: error: Unexpected token! 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:476: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:476:1215: error: Unexpected token! 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:476:1239: error: Unexpected token! 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:476:1233: error: unknown use of instruction mnemonic without a size suffix 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:476: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:476:1248: error: Unexpected token! 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:477: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:477:6: error: Unexpected token! 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:477: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:477:27: error: Unexpected token! 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:477: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:477:59: error: Unexpected token! 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:477: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:477:69: error: Unexpected token! 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:477: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:477:85: error: Unexpected token! 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:477: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:477:113: error: Unexpected token! 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:477:143: error: Unexpected token! 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:477:137: error: invalid operand for instruction 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:477: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:477:149: error: Unexpected token! 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:477: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:477:165: error: Unexpected token! 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:477: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:477:178: error: Unexpected token! 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:477: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:477:198: error: Unexpected token! 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:477:217: error: Unexpected token! 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:477:211: error: invalid operand for instruction 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:477: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:477:223: error: Unexpected token! 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:477: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:477:239: error: Unexpected token! 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:477:257: error: Unexpected token! 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:477:251: error: invalid operand for instruction 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:477: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:477:263: error: Unexpected token! 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:477: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:477:284: error: Unexpected token! 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:477: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:477:320: error: Unexpected token! 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:477:342: error: Unexpected token! 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:477:342: error: unexpected token in argument list 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:477: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:477:366: error: Unexpected token! 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:477: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:477:386: error: Unexpected token! 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:477: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:477:395: error: Unexpected token! 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:477: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:477:411: error: Unexpected token! 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:477: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:477:429: error: Unexpected token! 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:477: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:477:440: error: Unexpected token! 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:477: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:477:455: error: Unexpected token! 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:477: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:477:471: error: Unexpected token! 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:477:523: error: Unexpected token! 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:477:523: error: unexpected token in argument list 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:477: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:477:575: error: Unexpected token! 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:477: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:477:614: error: Unexpected token! 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:477: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:477:639: error: Unexpected token! 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:477: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:477:700: error: Unexpected token! 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:477: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:477:710: error: Unexpected token! 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:477:732: error: Unexpected token! 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:477:732: error: unexpected token in argument list 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:477: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:477:754: error: Unexpected token! 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:477: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:477:776: error: Unexpected token! 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:477: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:477:792: error: Unexpected token! 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:477: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:477:808: error: Unexpected token! 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:477: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:477:822: error: Unexpected token! 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:477: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:477:844: error: Unexpected token! 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:477: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:477:861: error: Unexpected token! 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:477: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:477:877: error: Unexpected token! 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:477: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:477: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:477:909: error: Unexpected token! 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:477:935: error: Unexpected token! 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:477:930: error: invalid operand for instruction 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:477: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:477:941: error: Unexpected token! 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:477:975: error: Unexpected token! 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:477:975: error: unexpected token in argument list 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:477:1017: error: Unexpected token! 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:477:1017: error: unexpected token in argument list 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:477: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:477:1059: error: Unexpected token! 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:477: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:477: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:477:1106: error: Unexpected token! 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:477:1130: error: Unexpected token! 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:477:1124: error: unknown use of instruction mnemonic without a size suffix 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:477: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:477:1136: error: Unexpected token! 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:477:1159: error: Unexpected token! 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:477:1154: error: invalid operand for instruction 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:477: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:477:1189: error: Unexpected token! 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:477: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:477:1215: error: Unexpected token! 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:477:1239: error: Unexpected token! 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:477:1233: error: unknown use of instruction mnemonic without a size suffix 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:477: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:477:1248: error: Unexpected token! 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:478: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:478:6: error: Unexpected token! 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:478: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:478:27: error: Unexpected token! 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:478: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:478:59: error: Unexpected token! 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:478: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:478:69: error: Unexpected token! 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:478: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:478:85: error: Unexpected token! 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:478: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:478:113: error: Unexpected token! 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:478:143: error: Unexpected token! 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:478:137: error: invalid operand for instruction 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:478: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:478:149: error: Unexpected token! 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:478: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:478:165: error: Unexpected token! 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:478: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:478:178: error: Unexpected token! 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:478: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:478:198: error: Unexpected token! 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:478:217: error: Unexpected token! 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:478:211: error: invalid operand for instruction 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:478: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:478:223: error: Unexpected token! 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:478: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:478:239: error: Unexpected token! 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:478:257: error: Unexpected token! 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:478:251: error: invalid operand for instruction 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:478: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:478:263: error: Unexpected token! 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:478: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:478:284: error: Unexpected token! 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:478: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:478:320: error: Unexpected token! 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:478:342: error: Unexpected token! 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:478:342: error: unexpected token in argument list 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:478: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:478:366: error: Unexpected token! 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:478: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:478:386: error: Unexpected token! 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:478: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:478:395: error: Unexpected token! 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:478: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:478:411: error: Unexpected token! 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:478: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:478:429: error: Unexpected token! 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:478: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:478:440: error: Unexpected token! 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:478: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:478:455: error: Unexpected token! 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:478: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:478:471: error: Unexpected token! 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:478:523: error: Unexpected token! 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:478:523: error: unexpected token in argument list 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:478: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:478:575: error: Unexpected token! 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:478: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:478:614: error: Unexpected token! 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:478: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:478:639: error: Unexpected token! 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:478: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:478:700: error: Unexpected token! 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:478: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:478:710: error: Unexpected token! 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:478:732: error: Unexpected token! 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:478:732: error: unexpected token in argument list 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:478: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:478:754: error: Unexpected token! 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:478: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:478:776: error: Unexpected token! 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:478: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:478:792: error: Unexpected token! 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:478: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:478:808: error: Unexpected token! 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:478: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:478:822: error: Unexpected token! 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:478: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:478:844: error: Unexpected token! 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:478: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:478:861: error: Unexpected token! 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:478: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:478:877: error: Unexpected token! 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:478: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:478: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:478:909: error: Unexpected token! 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:478:935: error: Unexpected token! 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:478:930: error: invalid operand for instruction 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:478: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:478:941: error: Unexpected token! 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:478:975: error: Unexpected token! 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:478:975: error: unexpected token in argument list 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:478:1017: error: Unexpected token! 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:478:1017: error: unexpected token in argument list 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:478: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:478:1059: error: Unexpected token! 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:478: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:478: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:478:1106: error: Unexpected token! 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:478:1130: error: Unexpected token! 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:478:1124: error: unknown use of instruction mnemonic without a size suffix 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:478: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:478:1136: error: Unexpected token! 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:478:1159: error: Unexpected token! 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:478:1154: error: invalid operand for instruction 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:478: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:478:1189: error: Unexpected token! 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:478: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:478:1215: error: Unexpected token! 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:478:1239: error: Unexpected token! 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:478:1233: error: unknown use of instruction mnemonic without a size suffix 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:478: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:478:1248: error: Unexpected token! 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:479: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:479:6: error: Unexpected token! 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:479: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:479:27: error: Unexpected token! 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:479: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:479:59: error: Unexpected token! 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:479: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:479:69: error: Unexpected token! 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:479: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:479:85: error: Unexpected token! 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:479: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:479:113: error: Unexpected token! 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:479:143: error: Unexpected token! 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:479:137: error: invalid operand for instruction 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:479: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:479:149: error: Unexpected token! 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:479: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:479:165: error: Unexpected token! 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:479: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:479:178: error: Unexpected token! 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:479: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:479:198: error: Unexpected token! 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:479:217: error: Unexpected token! 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:479:211: error: invalid operand for instruction 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:479: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:479:223: error: Unexpected token! 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:479: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:479:239: error: Unexpected token! 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:479:257: error: Unexpected token! 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:479:251: error: invalid operand for instruction 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:479: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:479:263: error: Unexpected token! 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:479: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:479:284: error: Unexpected token! 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:479: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:479:320: error: Unexpected token! 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:479:342: error: Unexpected token! 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:479:342: error: unexpected token in argument list 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:479: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:479:366: error: Unexpected token! 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:479: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:479:386: error: Unexpected token! 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:479: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:479:395: error: Unexpected token! 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:479: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:479:411: error: Unexpected token! 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:479: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:479:429: error: Unexpected token! 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:479: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:479:440: error: Unexpected token! 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:479: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:479:455: error: Unexpected token! 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:479: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:479:471: error: Unexpected token! 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:479:523: error: Unexpected token! 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:479:523: error: unexpected token in argument list 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:479: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:479:575: error: Unexpected token! 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:479: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:479:614: error: Unexpected token! 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:479: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:479:639: error: Unexpected token! 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:479: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:479:700: error: Unexpected token! 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:479: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:479:710: error: Unexpected token! 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:479:732: error: Unexpected token! 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:479:732: error: unexpected token in argument list 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:479: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:479:754: error: Unexpected token! 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:479: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:479:776: error: Unexpected token! 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:479: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:479:792: error: Unexpected token! 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:479: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:479:808: error: Unexpected token! 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:479: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:479:822: error: Unexpected token! 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:479: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:479:844: error: Unexpected token! 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:479: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:479:861: error: Unexpected token! 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:479: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:479:877: error: Unexpected token! 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:479: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:479: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:479:909: error: Unexpected token! 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:479:935: error: Unexpected token! 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:479:930: error: invalid operand for instruction 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:479: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:479:941: error: Unexpected token! 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:479:975: error: Unexpected token! 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:479:975: error: unexpected token in argument list 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:479:1017: error: Unexpected token! 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:479:1017: error: unexpected token in argument list 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:479: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:479:1059: error: Unexpected token! 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:479: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:479: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:479:1106: error: Unexpected token! 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:479:1130: error: Unexpected token! 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:479:1124: error: unknown use of instruction mnemonic without a size suffix 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:479: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:479:1136: error: Unexpected token! 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:479:1159: error: Unexpected token! 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:479:1154: error: invalid operand for instruction 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:479: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:479:1189: error: Unexpected token! 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:479: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:479:1215: error: Unexpected token! 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:479:1239: error: Unexpected token! 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:479:1233: error: unknown use of instruction mnemonic without a size suffix 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:479: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:479:1248: error: Unexpected token! 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:480: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:480:6: error: Unexpected token! 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:480: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:480:27: error: Unexpected token! 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:480: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:480:59: error: Unexpected token! 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:480: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:480:69: error: Unexpected token! 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:480: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:480:85: error: Unexpected token! 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:480: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:480:113: error: Unexpected token! 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:480:143: error: Unexpected token! 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:480:137: error: invalid operand for instruction 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:480: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:480:149: error: Unexpected token! 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:480: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:480:165: error: Unexpected token! 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:480: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:480:178: error: Unexpected token! 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:480: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:480:198: error: Unexpected token! 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:480:217: error: Unexpected token! 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:480:211: error: invalid operand for instruction 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:480: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:480:223: error: Unexpected token! 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:480: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:480:239: error: Unexpected token! 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:480:257: error: Unexpected token! 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:480:251: error: invalid operand for instruction 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:480: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:480:263: error: Unexpected token! 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:480: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:480:284: error: Unexpected token! 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:480: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:480:320: error: Unexpected token! 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:480:342: error: Unexpected token! 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:480:342: error: unexpected token in argument list 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:480: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:480:366: error: Unexpected token! 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:480: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:480:386: error: Unexpected token! 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:480: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:480:395: error: Unexpected token! 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:480: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:480:411: error: Unexpected token! 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:480: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:480:429: error: Unexpected token! 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:480: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:480:440: error: Unexpected token! 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:480: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:480:455: error: Unexpected token! 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:480: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:480:471: error: Unexpected token! 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:480:523: error: Unexpected token! 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:480:523: error: unexpected token in argument list 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:480: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:480:575: error: Unexpected token! 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:480: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:480:614: error: Unexpected token! 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:480: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:480:639: error: Unexpected token! 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:480: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:480:700: error: Unexpected token! 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:480: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:480:710: error: Unexpected token! 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:480:732: error: Unexpected token! 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:480:732: error: unexpected token in argument list 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:480: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:480:754: error: Unexpected token! 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:480: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:480:776: error: Unexpected token! 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:480: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:480:792: error: Unexpected token! 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:480: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:480:808: error: Unexpected token! 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:480: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:480:822: error: Unexpected token! 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:480: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:480:844: error: Unexpected token! 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:480: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:480:861: error: Unexpected token! 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:480: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:480:877: error: Unexpected token! 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:480: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:480: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:480:909: error: Unexpected token! 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:480:935: error: Unexpected token! 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:480:930: error: invalid operand for instruction 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:480: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:480:941: error: Unexpected token! 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:480:975: error: Unexpected token! 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:480:975: error: unexpected token in argument list 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:480:1017: error: Unexpected token! 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:480:1017: error: unexpected token in argument list 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:480: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:480:1059: error: Unexpected token! 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:480: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:480: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:480:1106: error: Unexpected token! 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:480:1130: error: Unexpected token! 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:480:1124: error: unknown use of instruction mnemonic without a size suffix 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:480: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:480:1136: error: Unexpected token! 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:480:1159: error: Unexpected token! 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:480:1154: error: invalid operand for instruction 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:480: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:480:1189: error: Unexpected token! 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:480: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:480:1215: error: Unexpected token! 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:480:1239: error: Unexpected token! 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:480:1233: error: unknown use of instruction mnemonic without a size suffix 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:480: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:480:1248: error: Unexpected token! 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:485:6: error: unknown token in expression pop %rax ^ jitc_mmu.S:485:6: error: Unexpected token! pop %rax ^ jitc_mmu.S:486:6: error: unknown token in expression pop %rdx # return address is no longer needed ^ jitc_mmu.S:486:6: error: Unexpected token! pop %rdx # return address is no longer needed ^ jitc_mmu.S:487:6: error: unknown token in expression pop %rcx # bytes to roll back ^ jitc_mmu.S:487:6: error: Unexpected token! pop %rcx # bytes to roll back ^ jitc_mmu.S:488:6: error: unknown token in expression add %rsp, %rcx ^ jitc_mmu.S:488:6: error: Unexpected token! add %rsp, %rcx ^ jitc_mmu.S:490:6: error: unknown token in expression mov %ecx, (1<<30) # PPC_EXC_SRR1_PAGE ^ jitc_mmu.S:490:6: error: Unexpected token! mov %ecx, (1<<30) # PPC_EXC_SRR1_PAGE ^ jitc_mmu.S:495:6: error: unknown token in expression pop %rdx # return address is no longer needed ^ jitc_mmu.S:495:6: error: Unexpected token! pop %rdx # return address is no longer needed ^ jitc_mmu.S:496:6: error: unknown token in expression pop %rcx # bytes to roll back ^ jitc_mmu.S:496:6: error: Unexpected token! pop %rcx # bytes to roll back ^ jitc_mmu.S:497:6: error: unknown token in expression add %rsp, %rcx ^ jitc_mmu.S:497:6: error: Unexpected token! add %rsp, %rcx ^ jitc_mmu.S:499:6: error: unknown token in expression mov %ecx, (1<<28) # PPC_EXC_SRR1_GUARD ^ jitc_mmu.S:499:6: error: Unexpected token! mov %ecx, (1<<28) # PPC_EXC_SRR1_GUARD ^ jitc_mmu.S:504:6: error: unknown token in expression mov %edx, %eax ^ jitc_mmu.S:504:6: error: Unexpected token! mov %edx, %eax ^ jitc_mmu.S:505:6: error: unknown token in expression mov %ecx, %eax ^ jitc_mmu.S:505:6: error: Unexpected token! mov %ecx, %eax ^ jitc_mmu.S:506:6: error: unknown token in expression shr %edx, 12 ^ jitc_mmu.S:506:6: error: Unexpected token! shr %edx, 12 ^ jitc_mmu.S:507:6: error: unknown token in expression and %ecx, 0xfffff000 ^ jitc_mmu.S:507:6: error: Unexpected token! and %ecx, 0xfffff000 ^ jitc_mmu.S:508:6: error: unknown token in expression and %edx, 32 -1 ^ jitc_mmu.S:508:6: error: Unexpected token! and %edx, 32 -1 ^ jitc_mmu.S:509:6: error: unknown token in expression cmp %ecx, [gMemorySize] ^ jitc_mmu.S:509:6: error: Unexpected token! cmp %ecx, [gMemorySize] ^ jitc_mmu.S:510:6: error: unknown token in expression mov %ebx, [gMemory] ^ jitc_mmu.S:510:6: error: Unexpected token! mov %ebx, [gMemory] ^ jitc_mmu.S:511:7: error: Unexpected token! ja 4f ^ jitc_mmu.S:511:2: error: invalid operand for instruction ja 4f ^ jitc_mmu.S:512:7: error: Unexpected token! mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx ^ jitc_mmu.S:512:7: error: unexpected token in argument list mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx ^ jitc_mmu.S:513:17: error: Unexpected token! mov dword ptr [%rdi+tlb_data_0_phys + %rdx*4], %ebx ^ jitc_mmu.S:513:17: error: unexpected token in argument list mov dword ptr [%rdi+tlb_data_0_phys + %rdx*4], %ebx ^ jitc_mmu.S:514:6: error: unknown token in expression add %eax, %ebx ^ jitc_mmu.S:514:6: error: Unexpected token! add %eax, %ebx ^ jitc_mmu.S:529: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:529:6: error: Unexpected token! 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:529: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:529:22: error: Unexpected token! 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:529: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:529:38: error: Unexpected token! 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:529: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:529:52: error: Unexpected token! 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:529: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:529:74: error: Unexpected token! 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:529: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:529:91: error: Unexpected token! 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:529:135: error: Unexpected token! 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:529:129: error: invalid operand for instruction 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:529: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:529:141: error: Unexpected token! 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:531:17: error: Unexpected token! test byte ptr [%rdi+msr], (1<<4) # MSR_DR ^ jitc_mmu.S:531:17: error: unexpected token in argument list test byte ptr [%rdi+msr], (1<<4) # MSR_DR ^ jitc_mmu.S:534: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:534:6: error: Unexpected token! 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:534: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:534:38: error: Unexpected token! 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:534: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:534:72: error: Unexpected token! 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:534: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:534:88: error: Unexpected token! 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:534:106: error: Unexpected token! 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:534:100: error: invalid operand for instruction 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:534:122: error: Unexpected token! 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:534:122: error: unexpected token in argument list 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:534: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:534:141: error: Unexpected token! 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:534: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:534:155: error: Unexpected token! 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:534:171: error: Unexpected token! 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:534:171: error: unexpected token in argument list 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:534:202: error: Unexpected token! 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:534:197: error: invalid operand for instruction 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:534: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:534:208: error: Unexpected token! 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:534: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:534:224: error: Unexpected token! 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:534: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:534:240: error: Unexpected token! 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:534: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:534:262: error: Unexpected token! 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:534: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:534:294: error: Unexpected token! 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:534: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:534:328: error: Unexpected token! 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:534: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:534:342: error: Unexpected token! 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:534: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:534:358: error: Unexpected token! 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:534: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:534:374: error: Unexpected token! 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:534: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:534: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:534:407: error: Unexpected token! 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:534:433: error: Unexpected token! 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:534:428: error: invalid operand for instruction 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:534: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:534:439: error: Unexpected token! 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:534: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:534:472: error: Unexpected token! 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:534:489: error: Unexpected token! 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:534:489: error: unexpected token in argument list 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:534:531: error: Unexpected token! 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:534:531: error: unexpected token in argument list 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:534: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:534: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:534:589: error: Unexpected token! 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:534: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:534:625: error: Unexpected token! 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:534:649: error: Unexpected token! 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:534:643: error: unknown use of instruction mnemonic without a size suffix 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:534: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:534:655: error: Unexpected token! 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:534:678: error: Unexpected token! 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:534:673: error: invalid operand for instruction 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:534: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:534:684: error: Unexpected token! 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:534: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:534:706: error: Unexpected token! 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:534:734: error: Unexpected token! 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:534:728: error: unknown use of instruction mnemonic without a size suffix 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:535: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:535:6: error: Unexpected token! 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:535: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:535:38: error: Unexpected token! 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:535: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:535:72: error: Unexpected token! 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:535: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:535:88: error: Unexpected token! 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:535:106: error: Unexpected token! 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:535:100: error: invalid operand for instruction 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:535:122: error: Unexpected token! 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:535:122: error: unexpected token in argument list 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:535: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:535:141: error: Unexpected token! 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:535: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:535:155: error: Unexpected token! 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:535:171: error: Unexpected token! 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:535:171: error: unexpected token in argument list 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:535:202: error: Unexpected token! 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:535:197: error: invalid operand for instruction 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:535: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:535:208: error: Unexpected token! 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:535: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:535:224: error: Unexpected token! 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:535: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:535:240: error: Unexpected token! 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:535: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:535:262: error: Unexpected token! 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:535: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:535:294: error: Unexpected token! 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:535: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:535:328: error: Unexpected token! 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:535: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:535:342: error: Unexpected token! 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:535: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:535:358: error: Unexpected token! 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:535: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:535:374: error: Unexpected token! 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:535: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:535: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:535:407: error: Unexpected token! 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:535:433: error: Unexpected token! 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:535:428: error: invalid operand for instruction 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:535: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:535:439: error: Unexpected token! 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:535: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:535:472: error: Unexpected token! 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:535:489: error: Unexpected token! 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:535:489: error: unexpected token in argument list 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:535:531: error: Unexpected token! 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:535:531: error: unexpected token in argument list 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:535: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:535: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:535:589: error: Unexpected token! 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:535: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:535:625: error: Unexpected token! 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:535:649: error: Unexpected token! 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:535:643: error: unknown use of instruction mnemonic without a size suffix 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:535: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:535:655: error: Unexpected token! 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:535:678: error: Unexpected token! 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:535:673: error: invalid operand for instruction 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:535: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:535:684: error: Unexpected token! 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:535: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:535:706: error: Unexpected token! 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:535:734: error: Unexpected token! 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:535:728: error: unknown use of instruction mnemonic without a size suffix 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:536: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:536:6: error: Unexpected token! 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:536: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:536:38: error: Unexpected token! 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:536: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:536:72: error: Unexpected token! 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:536: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:536:88: error: Unexpected token! 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:536:106: error: Unexpected token! 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:536:100: error: invalid operand for instruction 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:536:122: error: Unexpected token! 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:536:122: error: unexpected token in argument list 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:536: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:536:141: error: Unexpected token! 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:536: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:536:155: error: Unexpected token! 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:536:171: error: Unexpected token! 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:536:171: error: unexpected token in argument list 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:536:202: error: Unexpected token! 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:536:197: error: invalid operand for instruction 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:536: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:536:208: error: Unexpected token! 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:536: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:536:224: error: Unexpected token! 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:536: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:536:240: error: Unexpected token! 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:536: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:536:262: error: Unexpected token! 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:536: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:536:294: error: Unexpected token! 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:536: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:536:328: error: Unexpected token! 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:536: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:536:342: error: Unexpected token! 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:536: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:536:358: error: Unexpected token! 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:536: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:536:374: error: Unexpected token! 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:536: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:536: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:536:407: error: Unexpected token! 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:536:433: error: Unexpected token! 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:536:428: error: invalid operand for instruction 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:536: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:536:439: error: Unexpected token! 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:536: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:536:472: error: Unexpected token! 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:536:489: error: Unexpected token! 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:536:489: error: unexpected token in argument list 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:536:531: error: Unexpected token! 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:536:531: error: unexpected token in argument list 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:536: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:536: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:536:589: error: Unexpected token! 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:536: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:536:625: error: Unexpected token! 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:536:649: error: Unexpected token! 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:536:643: error: unknown use of instruction mnemonic without a size suffix 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:536: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:536:655: error: Unexpected token! 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:536:678: error: Unexpected token! 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:536:673: error: invalid operand for instruction 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:536: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:536:684: error: Unexpected token! 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:536: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:536:706: error: Unexpected token! 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:536:734: error: Unexpected token! 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:536:728: error: unknown use of instruction mnemonic without a size suffix 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:537: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:537:6: error: Unexpected token! 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:537: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:537:38: error: Unexpected token! 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:537: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:537:72: error: Unexpected token! 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:537: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:537:88: error: Unexpected token! 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:537:106: error: Unexpected token! 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:537:100: error: invalid operand for instruction 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:537:122: error: Unexpected token! 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:537:122: error: unexpected token in argument list 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:537: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:537:141: error: Unexpected token! 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:537: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:537:155: error: Unexpected token! 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:537:171: error: Unexpected token! 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:537:171: error: unexpected token in argument list 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:537:202: error: Unexpected token! 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:537:197: error: invalid operand for instruction 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:537: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:537:208: error: Unexpected token! 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:537: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:537:224: error: Unexpected token! 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:537: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:537:240: error: Unexpected token! 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:537: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:537:262: error: Unexpected token! 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:537: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:537:294: error: Unexpected token! 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:537: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:537:328: error: Unexpected token! 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:537: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:537:342: error: Unexpected token! 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:537: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:537:358: error: Unexpected token! 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:537: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:537:374: error: Unexpected token! 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:537: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:537: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:537:407: error: Unexpected token! 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:537:433: error: Unexpected token! 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:537:428: error: invalid operand for instruction 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:537: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:537:439: error: Unexpected token! 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:537: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:537:472: error: Unexpected token! 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:537:489: error: Unexpected token! 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:537:489: error: unexpected token in argument list 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:537:531: error: Unexpected token! 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:537:531: error: unexpected token in argument list 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:537: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:537: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:537:589: error: Unexpected token! 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:537: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:537:625: error: Unexpected token! 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:537:649: error: Unexpected token! 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:537:643: error: unknown use of instruction mnemonic without a size suffix 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:537: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:537:655: error: Unexpected token! 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:537:678: error: Unexpected token! 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:537:673: error: invalid operand for instruction 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:537: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:537:684: error: Unexpected token! 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:537: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:537:706: error: Unexpected token! 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:537:734: error: Unexpected token! 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:537:728: error: unknown use of instruction mnemonic without a size suffix 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:539:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:539:6: error: Unexpected token! mov %ebx, %eax ^ jitc_mmu.S:540:6: error: unknown token in expression shr %ebx, 28 # SR ^ jitc_mmu.S:540:6: error: Unexpected token! shr %ebx, 28 # SR ^ jitc_mmu.S:541:6: error: unknown token in expression mov %edx, [%rdi+sr+4*%rbx] ^ jitc_mmu.S:541:6: error: Unexpected token! mov %edx, [%rdi+sr+4*%rbx] ^ jitc_mmu.S:546:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:546:6: error: Unexpected token! mov %ebx, %eax ^ jitc_mmu.S:547:6: error: unknown token in expression mov %r12d, %edx ^ jitc_mmu.S:547:6: error: Unexpected token! mov %r12d, %edx ^ jitc_mmu.S:548:6: error: unknown token in expression shr %ebx, 12 ^ jitc_mmu.S:548:6: error: Unexpected token! shr %ebx, 12 ^ jitc_mmu.S:549:6: error: unknown token in expression mov %r8d, %eax ^ jitc_mmu.S:549:6: error: Unexpected token! mov %r8d, %eax ^ jitc_mmu.S:550:6: error: unknown token in expression and %ebx, 0xffff ^ jitc_mmu.S:550:6: error: Unexpected token! and %ebx, 0xffff ^ jitc_mmu.S:551:6: error: unknown token in expression shr %r8d, 22 ^ jitc_mmu.S:551:6: error: Unexpected token! shr %r8d, 22 ^ jitc_mmu.S:552:6: error: unknown token in expression and %r12d, 0xffffff ^ jitc_mmu.S:552:6: error: Unexpected token! and %r12d, 0xffffff ^ jitc_mmu.S:553:6: error: unknown token in expression and %r8d, 0x3f ^ jitc_mmu.S:553:6: error: Unexpected token! and %r8d, 0x3f ^ jitc_mmu.S:566:6: error: unknown token in expression xor %ebx, %r12d ^ jitc_mmu.S:566:6: error: Unexpected token! xor %ebx, %r12d ^ jitc_mmu.S:571:7: error: unknown token in expression push %rax ^ jitc_mmu.S:571:7: error: Unexpected token! push %rax ^ jitc_mmu.S:572:7: error: unknown token in expression push %rbx # das brauch ich ^ jitc_mmu.S:572:7: error: Unexpected token! push %rbx # das brauch ich ^ jitc_mmu.S:574:6: error: unknown token in expression and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:574:6: error: Unexpected token! and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:575:6: error: unknown token in expression shl %ebx, 6 ^ jitc_mmu.S:575:6: error: Unexpected token! shl %ebx, 6 ^ jitc_mmu.S:576:5: error: unknown token in expression or %ebx, [%rdi+pagetable_base] ^ jitc_mmu.S:576:5: error: Unexpected token! or %ebx, [%rdi+pagetable_base] ^ jitc_mmu.S:581: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:581:6: error: Unexpected token! 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:581: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:581:27: error: Unexpected token! 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:581: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:581:58: error: Unexpected token! 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:581: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:581:68: error: Unexpected token! 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:581: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:581:84: error: Unexpected token! 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:581: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:581:112: error: Unexpected token! 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:581:139: error: Unexpected token! 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:581:133: error: invalid operand for instruction 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:581: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:581:145: error: Unexpected token! 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:581: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:581:161: error: Unexpected token! 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:581: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:581:174: error: Unexpected token! 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:581: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:581:194: error: Unexpected token! 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:581:213: error: Unexpected token! 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:581:207: error: invalid operand for instruction 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:581: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:581:219: error: Unexpected token! 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:581: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:581:235: error: Unexpected token! 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:581:253: error: Unexpected token! 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:581:247: error: invalid operand for instruction 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:581: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:581:259: error: Unexpected token! 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:581: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:581:280: error: Unexpected token! 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:581: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:581:315: error: Unexpected token! 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:581:337: error: Unexpected token! 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:581:337: error: unexpected token in argument list 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:581: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:581:361: error: Unexpected token! 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:581: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:581:381: error: Unexpected token! 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:581: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:581:390: error: Unexpected token! 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:581: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:581:406: error: Unexpected token! 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:581: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:581:424: error: Unexpected token! 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:581: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:581:435: error: Unexpected token! 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:581: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:581:450: error: Unexpected token! 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:581: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:581:466: error: Unexpected token! 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:581:518: error: Unexpected token! 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:581:518: error: unexpected token in argument list 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:581: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:581:549: error: Unexpected token! 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:581: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:581:567: error: Unexpected token! 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:581: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:581:606: error: Unexpected token! 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:581: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:581:631: error: Unexpected token! 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:581: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:581:692: error: Unexpected token! 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:581: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:581:702: error: Unexpected token! 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:581:724: error: Unexpected token! 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:581:724: error: unexpected token in argument list 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:581: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:581:745: error: Unexpected token! 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:581: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:581:767: error: Unexpected token! 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:581: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:581:783: error: Unexpected token! 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:581: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:581:799: error: Unexpected token! 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:581: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:581:813: error: Unexpected token! 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:581: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:581:835: error: Unexpected token! 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:581: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:581:852: error: Unexpected token! 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:581: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:581:868: error: Unexpected token! 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:581: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:581: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:581:900: error: Unexpected token! 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:581:926: error: Unexpected token! 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:581:921: error: invalid operand for instruction 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:581: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:581:932: error: Unexpected token! 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:581:966: error: Unexpected token! 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:581:966: error: unexpected token in argument list 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:581:1008: error: Unexpected token! 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:581:1008: error: unexpected token in argument list 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:581: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:581:1050: error: Unexpected token! 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:581: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:581: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:581:1097: error: Unexpected token! 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:581:1121: error: Unexpected token! 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:581:1115: error: unknown use of instruction mnemonic without a size suffix 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:581: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:581:1127: error: Unexpected token! 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:581:1150: error: Unexpected token! 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:581:1145: error: invalid operand for instruction 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:581: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:581:1180: error: Unexpected token! 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:581: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:581:1206: error: Unexpected token! 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:581:1230: error: Unexpected token! 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:581:1224: error: unknown use of instruction mnemonic without a size suffix 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:581: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:581:1239: error: Unexpected token! 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:582: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:582:6: error: Unexpected token! 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:582: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:582:27: error: Unexpected token! 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:582: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:582:58: error: Unexpected token! 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:582: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:582:68: error: Unexpected token! 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:582: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:582:84: error: Unexpected token! 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:582: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:582:112: error: Unexpected token! 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:582:139: error: Unexpected token! 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:582:133: error: invalid operand for instruction 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:582: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:582:145: error: Unexpected token! 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:582: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:582:161: error: Unexpected token! 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:582: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:582:174: error: Unexpected token! 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:582: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:582:194: error: Unexpected token! 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:582:213: error: Unexpected token! 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:582:207: error: invalid operand for instruction 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:582: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:582:219: error: Unexpected token! 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:582: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:582:235: error: Unexpected token! 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:582:253: error: Unexpected token! 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:582:247: error: invalid operand for instruction 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:582: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:582:259: error: Unexpected token! 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:582: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:582:280: error: Unexpected token! 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:582: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:582:315: error: Unexpected token! 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:582:337: error: Unexpected token! 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:582:337: error: unexpected token in argument list 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:582: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:582:361: error: Unexpected token! 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:582: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:582:381: error: Unexpected token! 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:582: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:582:390: error: Unexpected token! 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:582: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:582:406: error: Unexpected token! 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:582: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:582:424: error: Unexpected token! 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:582: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:582:435: error: Unexpected token! 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:582: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:582:450: error: Unexpected token! 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:582: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:582:466: error: Unexpected token! 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:582:518: error: Unexpected token! 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:582:518: error: unexpected token in argument list 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:582: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:582:549: error: Unexpected token! 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:582: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:582:567: error: Unexpected token! 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:582: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:582:606: error: Unexpected token! 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:582: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:582:631: error: Unexpected token! 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:582: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:582:692: error: Unexpected token! 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:582: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:582:702: error: Unexpected token! 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:582:724: error: Unexpected token! 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:582:724: error: unexpected token in argument list 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:582: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:582:745: error: Unexpected token! 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:582: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:582:767: error: Unexpected token! 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:582: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:582:783: error: Unexpected token! 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:582: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:582:799: error: Unexpected token! 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:582: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:582:813: error: Unexpected token! 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:582: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:582:835: error: Unexpected token! 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:582: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:582:852: error: Unexpected token! 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:582: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:582:868: error: Unexpected token! 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:582: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:582: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:582:900: error: Unexpected token! 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:582:926: error: Unexpected token! 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:582:921: error: invalid operand for instruction 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:582: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:582:932: error: Unexpected token! 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:582:966: error: Unexpected token! 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:582:966: error: unexpected token in argument list 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:582:1008: error: Unexpected token! 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:582:1008: error: unexpected token in argument list 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:582: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:582:1050: error: Unexpected token! 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:582: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:582: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:582:1097: error: Unexpected token! 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:582:1121: error: Unexpected token! 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:582:1115: error: unknown use of instruction mnemonic without a size suffix 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:582: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:582:1127: error: Unexpected token! 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:582:1150: error: Unexpected token! 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:582:1145: error: invalid operand for instruction 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:582: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:582:1180: error: Unexpected token! 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:582: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:582:1206: error: Unexpected token! 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:582:1230: error: Unexpected token! 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:582:1224: error: unknown use of instruction mnemonic without a size suffix 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:582: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:582:1239: error: Unexpected token! 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:583: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:583:6: error: Unexpected token! 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:583: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:583:27: error: Unexpected token! 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:583: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:583:59: error: Unexpected token! 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:583: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:583:69: error: Unexpected token! 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:583: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:583:85: error: Unexpected token! 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:583: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:583:113: error: Unexpected token! 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:583:140: error: Unexpected token! 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:583:134: error: invalid operand for instruction 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:583: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:583:146: error: Unexpected token! 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:583: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:583:162: error: Unexpected token! 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:583: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:583:175: error: Unexpected token! 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:583: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:583:195: error: Unexpected token! 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:583:214: error: Unexpected token! 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:583:208: error: invalid operand for instruction 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:583: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:583:220: error: Unexpected token! 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:583: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:583:236: error: Unexpected token! 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:583:254: error: Unexpected token! 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:583:248: error: invalid operand for instruction 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:583: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:583:260: error: Unexpected token! 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:583: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:583:281: error: Unexpected token! 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:583: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:583:317: error: Unexpected token! 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:583:339: error: Unexpected token! 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:583:339: error: unexpected token in argument list 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:583: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:583:363: error: Unexpected token! 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:583: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:583:383: error: Unexpected token! 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:583: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:583:392: error: Unexpected token! 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:583: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:583:408: error: Unexpected token! 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:583: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:583:426: error: Unexpected token! 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:583: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:583:437: error: Unexpected token! 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:583: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:583:452: error: Unexpected token! 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:583: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:583:468: error: Unexpected token! 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:583:520: error: Unexpected token! 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:583:520: error: unexpected token in argument list 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:583: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:583:551: error: Unexpected token! 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:583: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:583:569: error: Unexpected token! 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:583: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:583:608: error: Unexpected token! 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:583: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:583:633: error: Unexpected token! 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:583: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:583:694: error: Unexpected token! 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:583: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:583:704: error: Unexpected token! 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:583:726: error: Unexpected token! 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:583:726: error: unexpected token in argument list 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:583: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:583:748: error: Unexpected token! 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:583: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:583:770: error: Unexpected token! 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:583: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:583:786: error: Unexpected token! 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:583: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:583:802: error: Unexpected token! 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:583: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:583:816: error: Unexpected token! 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:583: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:583:838: error: Unexpected token! 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:583: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:583:855: error: Unexpected token! 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:583: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:583:871: error: Unexpected token! 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:583: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:583: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:583:903: error: Unexpected token! 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:583:929: error: Unexpected token! 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:583:924: error: invalid operand for instruction 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:583: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:583:935: error: Unexpected token! 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:583:969: error: Unexpected token! 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:583:969: error: unexpected token in argument list 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:583:1011: error: Unexpected token! 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:583:1011: error: unexpected token in argument list 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:583: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:583:1053: error: Unexpected token! 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:583: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:583: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:583:1100: error: Unexpected token! 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:583:1124: error: Unexpected token! 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:583:1118: error: unknown use of instruction mnemonic without a size suffix 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:583: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:583:1130: error: Unexpected token! 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:583:1153: error: Unexpected token! 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:583:1148: error: invalid operand for instruction 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:583: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:583:1183: error: Unexpected token! 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:583: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:583:1209: error: Unexpected token! 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:583:1233: error: Unexpected token! 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:583:1227: error: unknown use of instruction mnemonic without a size suffix 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:583: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:583:1242: error: Unexpected token! 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:584: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:584:6: error: Unexpected token! 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:584: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:584:27: error: Unexpected token! 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:584: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:584:59: error: Unexpected token! 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:584: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:584:69: error: Unexpected token! 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:584: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:584:85: error: Unexpected token! 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:584: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:584:113: error: Unexpected token! 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:584:140: error: Unexpected token! 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:584:134: error: invalid operand for instruction 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:584: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:584:146: error: Unexpected token! 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:584: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:584:162: error: Unexpected token! 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:584: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:584:175: error: Unexpected token! 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:584: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:584:195: error: Unexpected token! 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:584:214: error: Unexpected token! 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:584:208: error: invalid operand for instruction 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:584: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:584:220: error: Unexpected token! 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:584: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:584:236: error: Unexpected token! 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:584:254: error: Unexpected token! 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:584:248: error: invalid operand for instruction 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:584: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:584:260: error: Unexpected token! 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:584: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:584:281: error: Unexpected token! 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:584: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:584:317: error: Unexpected token! 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:584:339: error: Unexpected token! 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:584:339: error: unexpected token in argument list 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:584: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:584:363: error: Unexpected token! 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:584: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:584:383: error: Unexpected token! 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:584: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:584:392: error: Unexpected token! 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:584: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:584:408: error: Unexpected token! 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:584: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:584:426: error: Unexpected token! 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:584: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:584:437: error: Unexpected token! 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:584: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:584:452: error: Unexpected token! 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:584: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:584:468: error: Unexpected token! 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:584:520: error: Unexpected token! 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:584:520: error: unexpected token in argument list 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:584: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:584:551: error: Unexpected token! 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:584: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:584:569: error: Unexpected token! 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:584: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:584:608: error: Unexpected token! 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:584: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:584:633: error: Unexpected token! 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:584: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:584:694: error: Unexpected token! 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:584: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:584:704: error: Unexpected token! 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:584:726: error: Unexpected token! 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:584:726: error: unexpected token in argument list 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:584: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:584:748: error: Unexpected token! 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:584: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:584:770: error: Unexpected token! 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:584: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:584:786: error: Unexpected token! 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:584: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:584:802: error: Unexpected token! 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:584: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:584:816: error: Unexpected token! 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:584: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:584:838: error: Unexpected token! 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:584: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:584:855: error: Unexpected token! 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:584: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:584:871: error: Unexpected token! 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:584: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:584: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:584:903: error: Unexpected token! 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:584:929: error: Unexpected token! 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:584:924: error: invalid operand for instruction 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:584: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:584:935: error: Unexpected token! 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:584:969: error: Unexpected token! 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:584:969: error: unexpected token in argument list 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:584:1011: error: Unexpected token! 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:584:1011: error: unexpected token in argument list 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:584: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:584:1053: error: Unexpected token! 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:584: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:584: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:584:1100: error: Unexpected token! 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:584:1124: error: Unexpected token! 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:584:1118: error: unknown use of instruction mnemonic without a size suffix 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:584: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:584:1130: error: Unexpected token! 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:584:1153: error: Unexpected token! 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:584:1148: error: invalid operand for instruction 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:584: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:584:1183: error: Unexpected token! 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:584: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:584:1209: error: Unexpected token! 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:584:1233: error: Unexpected token! 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:584:1227: error: unknown use of instruction mnemonic without a size suffix 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:584: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:584:1242: error: Unexpected token! 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:585: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:585:6: error: Unexpected token! 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:585: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:585:27: error: Unexpected token! 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:585: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:585:59: error: Unexpected token! 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:585: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:585:69: error: Unexpected token! 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:585: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:585:85: error: Unexpected token! 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:585: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:585:113: error: Unexpected token! 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:585:140: error: Unexpected token! 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:585:134: error: invalid operand for instruction 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:585: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:585:146: error: Unexpected token! 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:585: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:585:162: error: Unexpected token! 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:585: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:585:175: error: Unexpected token! 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:585: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:585:195: error: Unexpected token! 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:585:214: error: Unexpected token! 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:585:208: error: invalid operand for instruction 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:585: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:585:220: error: Unexpected token! 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:585: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:585:236: error: Unexpected token! 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:585:254: error: Unexpected token! 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:585:248: error: invalid operand for instruction 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:585: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:585:260: error: Unexpected token! 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:585: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:585:281: error: Unexpected token! 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:585: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:585:317: error: Unexpected token! 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:585:339: error: Unexpected token! 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:585:339: error: unexpected token in argument list 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:585: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:585:363: error: Unexpected token! 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:585: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:585:383: error: Unexpected token! 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:585: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:585:392: error: Unexpected token! 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:585: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:585:408: error: Unexpected token! 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:585: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:585:426: error: Unexpected token! 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:585: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:585:437: error: Unexpected token! 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:585: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:585:452: error: Unexpected token! 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:585: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:585:468: error: Unexpected token! 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:585:520: error: Unexpected token! 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:585:520: error: unexpected token in argument list 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:585: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:585:551: error: Unexpected token! 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:585: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:585:569: error: Unexpected token! 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:585: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:585:608: error: Unexpected token! 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:585: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:585:633: error: Unexpected token! 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:585: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:585:694: error: Unexpected token! 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:585: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:585:704: error: Unexpected token! 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:585:726: error: Unexpected token! 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:585:726: error: unexpected token in argument list 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:585: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:585:748: error: Unexpected token! 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:585: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:585:770: error: Unexpected token! 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:585: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:585:786: error: Unexpected token! 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:585: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:585:802: error: Unexpected token! 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:585: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:585:816: error: Unexpected token! 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:585: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:585:838: error: Unexpected token! 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:585: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:585:855: error: Unexpected token! 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:585: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:585:871: error: Unexpected token! 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:585: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:585: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:585:903: error: Unexpected token! 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:585:929: error: Unexpected token! 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:585:924: error: invalid operand for instruction 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:585: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:585:935: error: Unexpected token! 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:585:969: error: Unexpected token! 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:585:969: error: unexpected token in argument list 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:585:1011: error: Unexpected token! 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:585:1011: error: unexpected token in argument list 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:585: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:585:1053: error: Unexpected token! 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:585: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:585: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:585:1100: error: Unexpected token! 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:585:1124: error: Unexpected token! 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:585:1118: error: unknown use of instruction mnemonic without a size suffix 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:585: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:585:1130: error: Unexpected token! 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:585:1153: error: Unexpected token! 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:585:1148: error: invalid operand for instruction 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:585: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:585:1183: error: Unexpected token! 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:585: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:585:1209: error: Unexpected token! 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:585:1233: error: Unexpected token! 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:585:1227: error: unknown use of instruction mnemonic without a size suffix 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:585: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:585:1242: error: Unexpected token! 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:586: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:586:6: error: Unexpected token! 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:586: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:586:27: error: Unexpected token! 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:586: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:586:59: error: Unexpected token! 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:586: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:586:69: error: Unexpected token! 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:586: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:586:85: error: Unexpected token! 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:586: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:586:113: error: Unexpected token! 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:586:140: error: Unexpected token! 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:586:134: error: invalid operand for instruction 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:586: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:586:146: error: Unexpected token! 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:586: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:586:162: error: Unexpected token! 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:586: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:586:175: error: Unexpected token! 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:586: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:586:195: error: Unexpected token! 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:586:214: error: Unexpected token! 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:586:208: error: invalid operand for instruction 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:586: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:586:220: error: Unexpected token! 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:586: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:586:236: error: Unexpected token! 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:586:254: error: Unexpected token! 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:586:248: error: invalid operand for instruction 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:586: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:586:260: error: Unexpected token! 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:586: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:586:281: error: Unexpected token! 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:586: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:586:317: error: Unexpected token! 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:586:339: error: Unexpected token! 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:586:339: error: unexpected token in argument list 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:586: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:586:363: error: Unexpected token! 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:586: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:586:383: error: Unexpected token! 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:586: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:586:392: error: Unexpected token! 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:586: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:586:408: error: Unexpected token! 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:586: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:586:426: error: Unexpected token! 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:586: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:586:437: error: Unexpected token! 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:586: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:586:452: error: Unexpected token! 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:586: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:586:468: error: Unexpected token! 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:586:520: error: Unexpected token! 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:586:520: error: unexpected token in argument list 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:586: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:586:551: error: Unexpected token! 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:586: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:586:569: error: Unexpected token! 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:586: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:586:608: error: Unexpected token! 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:586: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:586:633: error: Unexpected token! 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:586: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:586:694: error: Unexpected token! 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:586: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:586:704: error: Unexpected token! 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:586:726: error: Unexpected token! 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:586:726: error: unexpected token in argument list 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:586: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:586:748: error: Unexpected token! 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:586: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:586:770: error: Unexpected token! 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:586: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:586:786: error: Unexpected token! 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:586: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:586:802: error: Unexpected token! 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:586: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:586:816: error: Unexpected token! 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:586: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:586:838: error: Unexpected token! 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:586: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:586:855: error: Unexpected token! 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:586: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:586:871: error: Unexpected token! 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:586: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:586: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:586:903: error: Unexpected token! 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:586:929: error: Unexpected token! 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:586:924: error: invalid operand for instruction 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:586: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:586:935: error: Unexpected token! 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:586:969: error: Unexpected token! 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:586:969: error: unexpected token in argument list 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:586:1011: error: Unexpected token! 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:586:1011: error: unexpected token in argument list 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:586: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:586:1053: error: Unexpected token! 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:586: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:586: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:586:1100: error: Unexpected token! 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:586:1124: error: Unexpected token! 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:586:1118: error: unknown use of instruction mnemonic without a size suffix 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:586: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:586:1130: error: Unexpected token! 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:586:1153: error: Unexpected token! 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:586:1148: error: invalid operand for instruction 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:586: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:586:1183: error: Unexpected token! 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:586: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:586:1209: error: Unexpected token! 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:586:1233: error: Unexpected token! 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:586:1227: error: unknown use of instruction mnemonic without a size suffix 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:586: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:586:1242: error: Unexpected token! 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:587: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:587:6: error: Unexpected token! 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:587: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:587:27: error: Unexpected token! 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:587: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:587:59: error: Unexpected token! 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:587: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:587:69: error: Unexpected token! 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:587: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:587:85: error: Unexpected token! 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:587: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:587:113: error: Unexpected token! 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:587:140: error: Unexpected token! 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:587:134: error: invalid operand for instruction 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:587: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:587:146: error: Unexpected token! 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:587: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:587:162: error: Unexpected token! 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:587: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:587:175: error: Unexpected token! 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:587: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:587:195: error: Unexpected token! 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:587:214: error: Unexpected token! 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:587:208: error: invalid operand for instruction 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:587: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:587:220: error: Unexpected token! 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:587: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:587:236: error: Unexpected token! 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:587:254: error: Unexpected token! 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:587:248: error: invalid operand for instruction 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:587: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:587:260: error: Unexpected token! 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:587: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:587:281: error: Unexpected token! 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:587: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:587:317: error: Unexpected token! 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:587:339: error: Unexpected token! 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:587:339: error: unexpected token in argument list 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:587: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:587:363: error: Unexpected token! 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:587: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:587:383: error: Unexpected token! 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:587: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:587:392: error: Unexpected token! 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:587: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:587:408: error: Unexpected token! 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:587: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:587:426: error: Unexpected token! 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:587: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:587:437: error: Unexpected token! 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:587: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:587:452: error: Unexpected token! 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:587: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:587:468: error: Unexpected token! 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:587:520: error: Unexpected token! 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:587:520: error: unexpected token in argument list 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:587: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:587:551: error: Unexpected token! 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:587: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:587:569: error: Unexpected token! 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:587: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:587:608: error: Unexpected token! 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:587: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:587:633: error: Unexpected token! 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:587: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:587:694: error: Unexpected token! 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:587: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:587:704: error: Unexpected token! 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:587:726: error: Unexpected token! 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:587:726: error: unexpected token in argument list 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:587: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:587:748: error: Unexpected token! 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:587: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:587:770: error: Unexpected token! 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:587: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:587:786: error: Unexpected token! 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:587: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:587:802: error: Unexpected token! 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:587: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:587:816: error: Unexpected token! 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:587: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:587:838: error: Unexpected token! 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:587: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:587:855: error: Unexpected token! 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:587: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:587:871: error: Unexpected token! 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:587: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:587: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:587:903: error: Unexpected token! 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:587:929: error: Unexpected token! 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:587:924: error: invalid operand for instruction 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:587: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:587:935: error: Unexpected token! 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:587:969: error: Unexpected token! 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:587:969: error: unexpected token in argument list 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:587:1011: error: Unexpected token! 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:587:1011: error: unexpected token in argument list 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:587: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:587:1053: error: Unexpected token! 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:587: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:587: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:587:1100: error: Unexpected token! 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:587:1124: error: Unexpected token! 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:587:1118: error: unknown use of instruction mnemonic without a size suffix 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:587: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:587:1130: error: Unexpected token! 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:587:1153: error: Unexpected token! 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:587:1148: error: invalid operand for instruction 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:587: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:587:1183: error: Unexpected token! 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:587: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:587:1209: error: Unexpected token! 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:587:1233: error: Unexpected token! 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:587:1227: error: unknown use of instruction mnemonic without a size suffix 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:587: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:587:1242: error: Unexpected token! 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:588: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:588:6: error: Unexpected token! 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:588: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:588:27: error: Unexpected token! 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:588: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:588:59: error: Unexpected token! 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:588: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:588:69: error: Unexpected token! 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:588: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:588:85: error: Unexpected token! 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:588: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:588:113: error: Unexpected token! 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:588:140: error: Unexpected token! 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:588:134: error: invalid operand for instruction 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:588: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:588:146: error: Unexpected token! 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:588: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:588:162: error: Unexpected token! 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:588: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:588:175: error: Unexpected token! 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:588: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:588:195: error: Unexpected token! 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:588:214: error: Unexpected token! 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:588:208: error: invalid operand for instruction 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:588: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:588:220: error: Unexpected token! 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:588: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:588:236: error: Unexpected token! 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:588:254: error: Unexpected token! 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:588:248: error: invalid operand for instruction 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:588: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:588:260: error: Unexpected token! 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:588: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:588:281: error: Unexpected token! 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:588: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:588:317: error: Unexpected token! 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:588:339: error: Unexpected token! 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:588:339: error: unexpected token in argument list 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:588: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:588:363: error: Unexpected token! 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:588: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:588:383: error: Unexpected token! 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:588: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:588:392: error: Unexpected token! 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:588: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:588:408: error: Unexpected token! 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:588: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:588:426: error: Unexpected token! 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:588: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:588:437: error: Unexpected token! 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:588: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:588:452: error: Unexpected token! 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:588: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:588:468: error: Unexpected token! 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:588:520: error: Unexpected token! 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:588:520: error: unexpected token in argument list 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:588: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:588:551: error: Unexpected token! 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:588: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:588:569: error: Unexpected token! 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:588: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:588:608: error: Unexpected token! 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:588: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:588:633: error: Unexpected token! 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:588: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:588:694: error: Unexpected token! 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:588: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:588:704: error: Unexpected token! 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:588:726: error: Unexpected token! 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:588:726: error: unexpected token in argument list 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:588: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:588:748: error: Unexpected token! 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:588: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:588:770: error: Unexpected token! 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:588: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:588:786: error: Unexpected token! 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:588: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:588:802: error: Unexpected token! 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:588: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:588:816: error: Unexpected token! 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:588: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:588:838: error: Unexpected token! 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:588: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:588:855: error: Unexpected token! 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:588: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:588:871: error: Unexpected token! 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:588: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:588: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:588:903: error: Unexpected token! 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:588:929: error: Unexpected token! 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:588:924: error: invalid operand for instruction 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:588: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:588:935: error: Unexpected token! 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:588:969: error: Unexpected token! 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:588:969: error: unexpected token in argument list 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:588:1011: error: Unexpected token! 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:588:1011: error: unexpected token in argument list 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:588: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:588:1053: error: Unexpected token! 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:588: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:588: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:588:1100: error: Unexpected token! 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:588:1124: error: Unexpected token! 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:588:1118: error: unknown use of instruction mnemonic without a size suffix 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:588: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:588:1130: error: Unexpected token! 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:588:1153: error: Unexpected token! 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:588:1148: error: invalid operand for instruction 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:588: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:588:1183: error: Unexpected token! 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:588: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:588:1209: error: Unexpected token! 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:588:1233: error: Unexpected token! 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:588:1227: error: unknown use of instruction mnemonic without a size suffix 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:588: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:588:1242: error: Unexpected token! 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:592:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:592:6: error: Unexpected token! pop %rbx ^ jitc_mmu.S:593:6: error: unknown token in expression not %ebx ^ jitc_mmu.S:593:6: error: Unexpected token! not %ebx ^ jitc_mmu.S:594:6: error: unknown token in expression and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:594:6: error: Unexpected token! and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:595:6: error: unknown token in expression shl %ebx, 6 ^ jitc_mmu.S:595:6: error: Unexpected token! shl %ebx, 6 ^ jitc_mmu.S:596:5: error: unknown token in expression or %ebx, [%rdi+pagetable_base] ^ jitc_mmu.S:596:5: error: Unexpected token! or %ebx, [%rdi+pagetable_base] ^ jitc_mmu.S:598: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:598:6: error: Unexpected token! 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:598: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:598:27: error: Unexpected token! 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:598: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:598:58: error: Unexpected token! 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:598: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:598:68: error: Unexpected token! 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:598: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:598:84: error: Unexpected token! 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:598: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:598:112: error: Unexpected token! 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:598:142: error: Unexpected token! 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:598:136: error: invalid operand for instruction 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:598: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:598:148: error: Unexpected token! 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:598: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:598:164: error: Unexpected token! 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:598: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:598:177: error: Unexpected token! 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:598: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:598:197: error: Unexpected token! 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:598:216: error: Unexpected token! 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:598:210: error: invalid operand for instruction 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:598: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:598:222: error: Unexpected token! 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:598: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:598:238: error: Unexpected token! 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:598:256: error: Unexpected token! 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:598:250: error: invalid operand for instruction 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:598: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:598:262: error: Unexpected token! 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:598: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:598:283: error: Unexpected token! 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:598: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:598:318: error: Unexpected token! 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:598:340: error: Unexpected token! 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:598:340: error: unexpected token in argument list 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:598: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:598:364: error: Unexpected token! 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:598: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:598:384: error: Unexpected token! 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:598: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:598:393: error: Unexpected token! 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:598: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:598:409: error: Unexpected token! 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:598: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:598:427: error: Unexpected token! 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:598: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:598:438: error: Unexpected token! 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:598: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:598:453: error: Unexpected token! 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:598: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:598:469: error: Unexpected token! 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:598:521: error: Unexpected token! 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:598:521: error: unexpected token in argument list 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:598: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:598:573: error: Unexpected token! 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:598: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:598:612: error: Unexpected token! 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:598: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:598:637: error: Unexpected token! 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:598: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:598:698: error: Unexpected token! 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:598: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:598:708: error: Unexpected token! 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:598:730: error: Unexpected token! 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:598:730: error: unexpected token in argument list 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:598: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:598:751: error: Unexpected token! 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:598: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:598:773: error: Unexpected token! 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:598: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:598:789: error: Unexpected token! 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:598: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:598:805: error: Unexpected token! 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:598: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:598:819: error: Unexpected token! 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:598: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:598:841: error: Unexpected token! 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:598: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:598:858: error: Unexpected token! 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:598: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:598:874: error: Unexpected token! 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:598: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:598: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:598:906: error: Unexpected token! 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:598:932: error: Unexpected token! 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:598:927: error: invalid operand for instruction 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:598: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:598:938: error: Unexpected token! 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:598:972: error: Unexpected token! 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:598:972: error: unexpected token in argument list 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:598:1014: error: Unexpected token! 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:598:1014: error: unexpected token in argument list 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:598: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:598:1056: error: Unexpected token! 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:598: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:598: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:598:1103: error: Unexpected token! 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:598:1127: error: Unexpected token! 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:598:1121: error: unknown use of instruction mnemonic without a size suffix 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:598: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:598:1133: error: Unexpected token! 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:598:1156: error: Unexpected token! 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:598:1151: error: invalid operand for instruction 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:598: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:598:1186: error: Unexpected token! 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:598: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:598:1212: error: Unexpected token! 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:598:1236: error: Unexpected token! 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:598:1230: error: unknown use of instruction mnemonic without a size suffix 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:598: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:598:1245: error: Unexpected token! 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:599: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:599:6: error: Unexpected token! 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:599: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:599:27: error: Unexpected token! 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:599: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:599:58: error: Unexpected token! 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:599: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:599:68: error: Unexpected token! 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:599: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:599:84: error: Unexpected token! 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:599: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:599:112: error: Unexpected token! 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:599:142: error: Unexpected token! 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:599:136: error: invalid operand for instruction 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:599: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:599:148: error: Unexpected token! 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:599: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:599:164: error: Unexpected token! 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:599: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:599:177: error: Unexpected token! 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:599: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:599:197: error: Unexpected token! 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:599:216: error: Unexpected token! 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:599:210: error: invalid operand for instruction 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:599: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:599:222: error: Unexpected token! 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:599: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:599:238: error: Unexpected token! 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:599:256: error: Unexpected token! 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:599:250: error: invalid operand for instruction 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:599: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:599:262: error: Unexpected token! 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:599: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:599:283: error: Unexpected token! 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:599: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:599:318: error: Unexpected token! 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:599:340: error: Unexpected token! 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:599:340: error: unexpected token in argument list 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:599: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:599:364: error: Unexpected token! 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:599: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:599:384: error: Unexpected token! 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:599: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:599:393: error: Unexpected token! 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:599: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:599:409: error: Unexpected token! 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:599: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:599:427: error: Unexpected token! 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:599: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:599:438: error: Unexpected token! 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:599: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:599:453: error: Unexpected token! 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:599: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:599:469: error: Unexpected token! 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:599:521: error: Unexpected token! 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:599:521: error: unexpected token in argument list 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:599: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:599:573: error: Unexpected token! 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:599: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:599:612: error: Unexpected token! 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:599: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:599:637: error: Unexpected token! 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:599: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:599:698: error: Unexpected token! 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:599: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:599:708: error: Unexpected token! 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:599:730: error: Unexpected token! 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:599:730: error: unexpected token in argument list 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:599: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:599:751: error: Unexpected token! 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:599: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:599:773: error: Unexpected token! 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:599: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:599:789: error: Unexpected token! 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:599: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:599:805: error: Unexpected token! 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:599: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:599:819: error: Unexpected token! 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:599: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:599:841: error: Unexpected token! 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:599: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:599:858: error: Unexpected token! 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:599: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:599:874: error: Unexpected token! 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:599: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:599: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:599:906: error: Unexpected token! 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:599:932: error: Unexpected token! 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:599:927: error: invalid operand for instruction 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:599: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:599:938: error: Unexpected token! 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:599:972: error: Unexpected token! 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:599:972: error: unexpected token in argument list 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:599:1014: error: Unexpected token! 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:599:1014: error: unexpected token in argument list 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:599: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:599:1056: error: Unexpected token! 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:599: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:599: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:599:1103: error: Unexpected token! 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:599:1127: error: Unexpected token! 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:599:1121: error: unknown use of instruction mnemonic without a size suffix 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:599: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:599:1133: error: Unexpected token! 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:599:1156: error: Unexpected token! 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:599:1151: error: invalid operand for instruction 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:599: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:599:1186: error: Unexpected token! 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:599: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:599:1212: error: Unexpected token! 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:599:1236: error: Unexpected token! 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:599:1230: error: unknown use of instruction mnemonic without a size suffix 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:599: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:599:1245: error: Unexpected token! 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:600: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:600:6: error: Unexpected token! 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:600: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:600:27: error: Unexpected token! 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:600: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:600:59: error: Unexpected token! 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:600: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:600:69: error: Unexpected token! 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:600: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:600:85: error: Unexpected token! 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:600: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:600:113: error: Unexpected token! 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:600:143: error: Unexpected token! 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:600:137: error: invalid operand for instruction 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:600: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:600:149: error: Unexpected token! 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:600: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:600:165: error: Unexpected token! 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:600: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:600:178: error: Unexpected token! 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:600: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:600:198: error: Unexpected token! 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:600:217: error: Unexpected token! 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:600:211: error: invalid operand for instruction 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:600: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:600:223: error: Unexpected token! 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:600: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:600:239: error: Unexpected token! 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:600:257: error: Unexpected token! 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:600:251: error: invalid operand for instruction 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:600: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:600:263: error: Unexpected token! 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:600: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:600:284: error: Unexpected token! 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:600: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:600:320: error: Unexpected token! 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:600:342: error: Unexpected token! 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:600:342: error: unexpected token in argument list 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:600: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:600:366: error: Unexpected token! 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:600: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:600:386: error: Unexpected token! 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:600: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:600:395: error: Unexpected token! 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:600: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:600:411: error: Unexpected token! 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:600: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:600:429: error: Unexpected token! 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:600: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:600:440: error: Unexpected token! 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:600: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:600:455: error: Unexpected token! 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:600: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:600:471: error: Unexpected token! 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:600:523: error: Unexpected token! 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:600:523: error: unexpected token in argument list 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:600: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_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:600:575: error: Unexpected token! 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:600: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:600:614: error: Unexpected token! 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:600: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:600:639: error: Unexpected token! 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:600: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:600:700: error: Unexpected token! 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:600: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:600:710: error: Unexpected token! 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:600:732: error: Unexpected token! 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:600:732: error: unexpected token in argument list 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:600: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:600:754: error: Unexpected token! 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:600: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:600:776: error: Unexpected token! 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:600: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:600:792: error: Unexpected token! 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:600: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:600:808: error: Unexpected token! 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:600: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:600:822: error: Unexpected token! 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:600: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:600:844: error: Unexpected token! 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:600: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:600:861: error: Unexpected token! 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:600: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:600:877: error: Unexpected token! 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:600: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:600: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:600:909: error: Unexpected token! 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:600:935: error: Unexpected token! 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:600:930: error: invalid operand for instruction 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:600: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:600:941: error: Unexpected token! 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:600:975: error: Unexpected token! 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:600:975: error: unexpected token in argument list 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:600:1017: error: Unexpected token! 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:600:1017: error: unexpected token in argument list 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:600: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:600:1059: error: Unexpected token! 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:600: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:600: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:600:1106: error: Unexpected token! 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:600:1130: error: Unexpected token! 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:600:1124: error: unknown use of instruction mnemonic without a size suffix 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:600: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:600:1136: error: Unexpected token! 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:600:1159: error: Unexpected token! 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:600:1154: error: invalid operand for instruction 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:600: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:600:1189: error: Unexpected token! 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:600: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:600:1215: error: Unexpected token! 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:600:1239: error: Unexpected token! 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:600:1233: error: unknown use of instruction mnemonic without a size suffix 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:600: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:600:1248: error: Unexpected token! 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:601: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:601:6: error: Unexpected token! 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:601: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:601:27: error: Unexpected token! 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:601: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:601:59: error: Unexpected token! 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:601: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:601:69: error: Unexpected token! 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:601: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:601:85: error: Unexpected token! 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:601: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:601:113: error: Unexpected token! 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:601:143: error: Unexpected token! 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:601:137: error: invalid operand for instruction 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:601: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:601:149: error: Unexpected token! 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:601: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:601:165: error: Unexpected token! 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:601: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:601:178: error: Unexpected token! 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:601: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:601:198: error: Unexpected token! 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:601:217: error: Unexpected token! 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:601:211: error: invalid operand for instruction 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:601: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:601:223: error: Unexpected token! 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:601: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:601:239: error: Unexpected token! 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:601:257: error: Unexpected token! 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:601:251: error: invalid operand for instruction 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:601: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:601:263: error: Unexpected token! 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:601: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:601:284: error: Unexpected token! 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:601: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:601:320: error: Unexpected token! 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:601:342: error: Unexpected token! 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:601:342: error: unexpected token in argument list 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:601: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:601:366: error: Unexpected token! 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:601: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:601:386: error: Unexpected token! 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:601: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:601:395: error: Unexpected token! 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:601: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:601:411: error: Unexpected token! 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:601: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:601:429: error: Unexpected token! 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:601: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:601:440: error: Unexpected token! 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:601: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:601:455: error: Unexpected token! 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:601: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:601:471: error: Unexpected token! 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:601:523: error: Unexpected token! 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:601:523: error: unexpected token in argument list 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:601: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:601:575: error: Unexpected token! 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:601: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:601:614: error: Unexpected token! 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:601: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:601:639: error: Unexpected token! 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:601: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:601:700: error: Unexpected token! 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:601: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:601:710: error: Unexpected token! 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:601:732: error: Unexpected token! 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:601:732: error: unexpected token in argument list 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:601: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:601:754: error: Unexpected token! 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:601: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:601:776: error: Unexpected token! 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:601: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:601:792: error: Unexpected token! 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:601: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:601:808: error: Unexpected token! 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:601: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:601:822: error: Unexpected token! 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:601: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:601:844: error: Unexpected token! 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:601: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:601:861: error: Unexpected token! 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:601: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:601:877: error: Unexpected token! 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:601: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:601: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:601:909: error: Unexpected token! 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:601:935: error: Unexpected token! 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:601:930: error: invalid operand for instruction 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:601: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:601:941: error: Unexpected token! 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:601:975: error: Unexpected token! 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:601:975: error: unexpected token in argument list 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:601:1017: error: Unexpected token! 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:601:1017: error: unexpected token in argument list 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:601: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:601:1059: error: Unexpected token! 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:601: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:601: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:601:1106: error: Unexpected token! 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:601:1130: error: Unexpected token! 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:601:1124: error: unknown use of instruction mnemonic without a size suffix 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:601: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:601:1136: error: Unexpected token! 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:601:1159: error: Unexpected token! 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:601:1154: error: invalid operand for instruction 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:601: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:601:1189: error: Unexpected token! 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:601: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:601:1215: error: Unexpected token! 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:601:1239: error: Unexpected token! 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:601:1233: error: unknown use of instruction mnemonic without a size suffix 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:601: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:601:1248: error: Unexpected token! 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:602: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:602:6: error: Unexpected token! 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:602: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:602:27: error: Unexpected token! 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:602: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:602:59: error: Unexpected token! 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:602: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:602:69: error: Unexpected token! 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:602: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:602:85: error: Unexpected token! 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:602: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:602:113: error: Unexpected token! 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:602:143: error: Unexpected token! 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:602:137: error: invalid operand for instruction 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:602: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:602:149: error: Unexpected token! 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:602: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:602:165: error: Unexpected token! 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:602: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:602:178: error: Unexpected token! 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:602: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:602:198: error: Unexpected token! 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:602:217: error: Unexpected token! 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:602:211: error: invalid operand for instruction 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:602: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:602:223: error: Unexpected token! 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:602: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:602:239: error: Unexpected token! 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:602:257: error: Unexpected token! 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:602:251: error: invalid operand for instruction 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:602: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:602:263: error: Unexpected token! 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:602: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:602:284: error: Unexpected token! 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:602: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:602:320: error: Unexpected token! 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:602:342: error: Unexpected token! 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:602:342: error: unexpected token in argument list 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:602: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:602:366: error: Unexpected token! 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:602: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:602:386: error: Unexpected token! 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:602: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:602:395: error: Unexpected token! 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:602: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:602:411: error: Unexpected token! 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:602: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:602:429: error: Unexpected token! 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:602: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:602:440: error: Unexpected token! 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:602: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:602:455: error: Unexpected token! 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:602: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:602:471: error: Unexpected token! 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:602:523: error: Unexpected token! 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:602:523: error: unexpected token in argument list 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:602: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:602:575: error: Unexpected token! 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:602: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:602:614: error: Unexpected token! 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:602: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:602:639: error: Unexpected token! 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:602: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:602:700: error: Unexpected token! 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:602: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:602:710: error: Unexpected token! 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:602:732: error: Unexpected token! 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:602:732: error: unexpected token in argument list 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:602: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:602:754: error: Unexpected token! 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:602: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:602:776: error: Unexpected token! 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:602: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:602:792: error: Unexpected token! 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:602: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:602:808: error: Unexpected token! 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:602: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:602:822: error: Unexpected token! 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:602: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:602:844: error: Unexpected token! 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:602: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:602:861: error: Unexpected token! 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:602: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:602:877: error: Unexpected token! 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:602: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:602: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:602:909: error: Unexpected token! 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:602:935: error: Unexpected token! 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:602:930: error: invalid operand for instruction 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:602: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:602:941: error: Unexpected token! 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:602:975: error: Unexpected token! 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:602:975: error: unexpected token in argument list 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:602:1017: error: Unexpected token! 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:602:1017: error: unexpected token in argument list 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:602: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:602:1059: error: Unexpected token! 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:602: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:602: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:602:1106: error: Unexpected token! 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:602:1130: error: Unexpected token! 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:602:1124: error: unknown use of instruction mnemonic without a size suffix 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:602: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:602:1136: error: Unexpected token! 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:602:1159: error: Unexpected token! 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:602:1154: error: invalid operand for instruction 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:602: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:602:1189: error: Unexpected token! 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:602: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:602:1215: error: Unexpected token! 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:602:1239: error: Unexpected token! 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:602:1233: error: unknown use of instruction mnemonic without a size suffix 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:602: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:602:1248: error: Unexpected token! 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:603: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:603:6: error: Unexpected token! 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:603: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:603:27: error: Unexpected token! 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:603: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:603:59: error: Unexpected token! 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:603: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:603:69: error: Unexpected token! 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:603: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:603:85: error: Unexpected token! 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:603: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:603:113: error: Unexpected token! 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:603:143: error: Unexpected token! 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:603:137: error: invalid operand for instruction 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:603: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:603:149: error: Unexpected token! 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:603: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:603:165: error: Unexpected token! 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:603: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:603:178: error: Unexpected token! 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:603: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:603:198: error: Unexpected token! 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:603:217: error: Unexpected token! 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:603:211: error: invalid operand for instruction 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:603: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:603:223: error: Unexpected token! 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:603: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:603:239: error: Unexpected token! 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:603:257: error: Unexpected token! 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:603:251: error: invalid operand for instruction 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:603: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:603:263: error: Unexpected token! 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:603: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:603:284: error: Unexpected token! 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:603: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:603:320: error: Unexpected token! 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:603:342: error: Unexpected token! 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:603:342: error: unexpected token in argument list 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:603: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:603:366: error: Unexpected token! 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:603: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:603:386: error: Unexpected token! 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:603: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:603:395: error: Unexpected token! 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:603: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:603:411: error: Unexpected token! 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:603: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:603:429: error: Unexpected token! 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:603: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:603:440: error: Unexpected token! 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:603: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:603:455: error: Unexpected token! 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:603: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:603:471: error: Unexpected token! 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:603:523: error: Unexpected token! 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:603:523: error: unexpected token in argument list 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:603: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:603:575: error: Unexpected token! 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:603: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:603:614: error: Unexpected token! 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:603: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:603:639: error: Unexpected token! 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:603: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:603:700: error: Unexpected token! 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:603: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:603:710: error: Unexpected token! 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:603:732: error: Unexpected token! 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:603:732: error: unexpected token in argument list 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:603: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:603:754: error: Unexpected token! 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:603: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:603:776: error: Unexpected token! 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:603: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:603:792: error: Unexpected token! 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:603: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:603:808: error: Unexpected token! 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:603: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:603:822: error: Unexpected token! 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:603: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:603:844: error: Unexpected token! 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:603: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:603:861: error: Unexpected token! 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:603: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:603:877: error: Unexpected token! 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:603: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:603: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:603:909: error: Unexpected token! 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:603:935: error: Unexpected token! 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:603:930: error: invalid operand for instruction 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:603: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:603:941: error: Unexpected token! 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:603:975: error: Unexpected token! 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:603:975: error: unexpected token in argument list 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:603:1017: error: Unexpected token! 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:603:1017: error: unexpected token in argument list 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:603: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:603:1059: error: Unexpected token! 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:603: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:603: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:603:1106: error: Unexpected token! 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:603:1130: error: Unexpected token! 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:603:1124: error: unknown use of instruction mnemonic without a size suffix 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:603: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:603:1136: error: Unexpected token! 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:603:1159: error: Unexpected token! 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:603:1154: error: invalid operand for instruction 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:603: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:603:1189: error: Unexpected token! 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:603: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:603:1215: error: Unexpected token! 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:603:1239: error: Unexpected token! 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:603:1233: error: unknown use of instruction mnemonic without a size suffix 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:603: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:603:1248: error: Unexpected token! 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:604: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:604:6: error: Unexpected token! 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:604: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:604:27: error: Unexpected token! 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:604: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:604:59: error: Unexpected token! 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:604: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:604:69: error: Unexpected token! 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:604: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:604:85: error: Unexpected token! 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:604: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:604:113: error: Unexpected token! 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:604:143: error: Unexpected token! 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:604:137: error: invalid operand for instruction 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:604: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:604:149: error: Unexpected token! 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:604: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:604:165: error: Unexpected token! 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:604: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:604:178: error: Unexpected token! 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:604: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:604:198: error: Unexpected token! 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:604:217: error: Unexpected token! 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:604:211: error: invalid operand for instruction 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:604: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:604:223: error: Unexpected token! 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:604: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:604:239: error: Unexpected token! 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:604:257: error: Unexpected token! 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:604:251: error: invalid operand for instruction 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:604: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:604:263: error: Unexpected token! 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:604: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:604:284: error: Unexpected token! 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:604: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:604:320: error: Unexpected token! 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:604:342: error: Unexpected token! 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:604:342: error: unexpected token in argument list 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:604: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:604:366: error: Unexpected token! 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:604: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:604:386: error: Unexpected token! 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:604: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:604:395: error: Unexpected token! 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:604: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:604:411: error: Unexpected token! 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:604: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:604:429: error: Unexpected token! 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:604: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:604:440: error: Unexpected token! 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:604: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:604:455: error: Unexpected token! 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:604: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:604:471: error: Unexpected token! 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:604:523: error: Unexpected token! 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:604:523: error: unexpected token in argument list 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:604: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:604:575: error: Unexpected token! 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:604: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:604:614: error: Unexpected token! 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:604: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:604:639: error: Unexpected token! 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:604: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:604:700: error: Unexpected token! 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:604: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:604:710: error: Unexpected token! 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:604:732: error: Unexpected token! 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:604:732: error: unexpected token in argument list 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:604: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:604:754: error: Unexpected token! 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:604: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:604:776: error: Unexpected token! 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:604: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:604:792: error: Unexpected token! 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:604: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:604:808: error: Unexpected token! 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:604: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:604:822: error: Unexpected token! 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:604: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:604:844: error: Unexpected token! 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:604: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:604:861: error: Unexpected token! 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:604: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:604:877: error: Unexpected token! 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:604: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:604: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:604:909: error: Unexpected token! 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:604:935: error: Unexpected token! 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:604:930: error: invalid operand for instruction 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:604: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:604:941: error: Unexpected token! 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:604:975: error: Unexpected token! 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:604:975: error: unexpected token in argument list 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:604:1017: error: Unexpected token! 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:604:1017: error: unexpected token in argument list 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:604: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:604:1059: error: Unexpected token! 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:604: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:604: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:604:1106: error: Unexpected token! 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:604:1130: error: Unexpected token! 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:604:1124: error: unknown use of instruction mnemonic without a size suffix 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:604: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:604:1136: error: Unexpected token! 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:604:1159: error: Unexpected token! 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:604:1154: error: invalid operand for instruction 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:604: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:604:1189: error: Unexpected token! 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:604: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:604:1215: error: Unexpected token! 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:604:1239: error: Unexpected token! 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:604:1233: error: unknown use of instruction mnemonic without a size suffix 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:604: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:604:1248: error: Unexpected token! 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:605: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:605:6: error: Unexpected token! 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:605: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:605:27: error: Unexpected token! 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:605: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:605:59: error: Unexpected token! 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:605: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:605:69: error: Unexpected token! 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:605: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:605:85: error: Unexpected token! 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:605: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:605:113: error: Unexpected token! 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:605:143: error: Unexpected token! 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:605:137: error: invalid operand for instruction 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:605: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:605:149: error: Unexpected token! 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:605: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:605:165: error: Unexpected token! 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:605: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:605:178: error: Unexpected token! 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:605: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:605:198: error: Unexpected token! 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:605:217: error: Unexpected token! 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:605:211: error: invalid operand for instruction 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:605: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:605:223: error: Unexpected token! 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:605: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:605:239: error: Unexpected token! 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:605:257: error: Unexpected token! 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:605:251: error: invalid operand for instruction 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:605: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:605:263: error: Unexpected token! 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:605: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:605:284: error: Unexpected token! 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:605: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:605:320: error: Unexpected token! 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:605:342: error: Unexpected token! 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:605:342: error: unexpected token in argument list 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:605: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:605:366: error: Unexpected token! 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:605: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:605:386: error: Unexpected token! 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:605: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:605:395: error: Unexpected token! 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:605: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:605:411: error: Unexpected token! 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:605: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:605:429: error: Unexpected token! 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:605: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:605:440: error: Unexpected token! 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:605: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:605:455: error: Unexpected token! 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:605: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:605:471: error: Unexpected token! 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:605:523: error: Unexpected token! 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:605:523: error: unexpected token in argument list 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:605: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:605:575: error: Unexpected token! 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:605: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:605:614: error: Unexpected token! 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:605: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:605:639: error: Unexpected token! 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:605: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:605:700: error: Unexpected token! 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:605: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:605:710: error: Unexpected token! 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:605:732: error: Unexpected token! 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:605:732: error: unexpected token in argument list 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:605: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:605:754: error: Unexpected token! 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:605: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:605:776: error: Unexpected token! 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:605: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:605:792: error: Unexpected token! 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:605: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:605:808: error: Unexpected token! 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:605: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:605:822: error: Unexpected token! 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:605: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:605:844: error: Unexpected token! 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:605: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:605:861: error: Unexpected token! 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:605: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:605:877: error: Unexpected token! 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:605: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:605: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:605:909: error: Unexpected token! 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:605:935: error: Unexpected token! 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:605:930: error: invalid operand for instruction 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:605: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:605:941: error: Unexpected token! 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:605:975: error: Unexpected token! 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:605:975: error: unexpected token in argument list 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:605:1017: error: Unexpected token! 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:605:1017: error: unexpected token in argument list 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:605: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:605:1059: error: Unexpected token! 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:605: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:605: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:605:1106: error: Unexpected token! 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:605:1130: error: Unexpected token! 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:605:1124: error: unknown use of instruction mnemonic without a size suffix 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:605: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:605:1136: error: Unexpected token! 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:605:1159: error: Unexpected token! 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:605:1154: error: invalid operand for instruction 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:605: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:605:1189: error: Unexpected token! 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:605: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:605:1215: error: Unexpected token! 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:605:1239: error: Unexpected token! 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:605:1233: error: unknown use of instruction mnemonic without a size suffix 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:605: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:605:1248: error: Unexpected token! 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:610:6: error: unknown token in expression pop %rax ^ jitc_mmu.S:610:6: error: Unexpected token! pop %rax ^ jitc_mmu.S:611:6: error: unknown token in expression pop %rdx # return address is no longer needed ^ jitc_mmu.S:611:6: error: Unexpected token! pop %rdx # return address is no longer needed ^ jitc_mmu.S:612:6: error: unknown token in expression pop %rcx # bytes to roll back ^ jitc_mmu.S:612:6: error: Unexpected token! pop %rcx # bytes to roll back ^ jitc_mmu.S:613:6: error: unknown token in expression add %rsp, %rcx ^ jitc_mmu.S:613:6: error: Unexpected token! add %rsp, %rcx ^ jitc_mmu.S:615:6: error: unknown token in expression mov %ecx, (1<<30) # PPC_EXC_DSISR_PAGE ^ jitc_mmu.S:615:6: error: Unexpected token! mov %ecx, (1<<30) # PPC_EXC_DSISR_PAGE ^ jitc_mmu.S:620:6: error: unknown token in expression mov %edx, %eax ^ jitc_mmu.S:620:6: error: Unexpected token! mov %edx, %eax ^ jitc_mmu.S:621:6: error: unknown token in expression mov %ecx, %eax ^ jitc_mmu.S:621:6: error: Unexpected token! mov %ecx, %eax ^ jitc_mmu.S:622:6: error: unknown token in expression shr %edx, 12 ^ jitc_mmu.S:622:6: error: Unexpected token! shr %edx, 12 ^ jitc_mmu.S:623:6: error: unknown token in expression and %ecx, 0xfffff000 ^ jitc_mmu.S:623:6: error: Unexpected token! and %ecx, 0xfffff000 ^ jitc_mmu.S:624:6: error: unknown token in expression and %edx, 32 -1 ^ jitc_mmu.S:624:6: error: Unexpected token! and %edx, 32 -1 ^ jitc_mmu.S:625:6: error: unknown token in expression cmp %ecx, [gMemorySize] ^ jitc_mmu.S:625:6: error: Unexpected token! cmp %ecx, [gMemorySize] ^ jitc_mmu.S:626:6: error: unknown token in expression mov %ebx, [gMemory] ^ jitc_mmu.S:626:6: error: Unexpected token! mov %ebx, [gMemory] ^ jitc_mmu.S:627:7: error: Unexpected token! ja 4f ^ jitc_mmu.S:627:2: error: invalid operand for instruction ja 4f ^ jitc_mmu.S:628:7: error: Unexpected token! mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx ^ jitc_mmu.S:628:7: error: unexpected token in argument list mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx ^ jitc_mmu.S:629:17: error: Unexpected token! mov dword ptr [%rdi+tlb_data_8_phys + %rdx*4], %ebx ^ jitc_mmu.S:629:17: error: unexpected token in argument list mov dword ptr [%rdi+tlb_data_8_phys + %rdx*4], %ebx ^ jitc_mmu.S:630:6: error: unknown token in expression add %eax, %ebx ^ jitc_mmu.S:630:6: error: Unexpected token! add %eax, %ebx ^ jitc_mmu.S:645: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:645:6: error: Unexpected token! 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:645: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:645:22: error: Unexpected token! 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:645: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:645:38: error: Unexpected token! 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:645: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:645:52: error: Unexpected token! 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:645: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:645:74: error: Unexpected token! 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:645: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:645:91: error: Unexpected token! 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:645:135: error: Unexpected token! 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:645:129: error: invalid operand for instruction 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:645: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:645:141: error: Unexpected token! 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:647:17: error: Unexpected token! test byte ptr [%rdi+msr], (1<<4) # MSR_DR ^ jitc_mmu.S:647:17: error: unexpected token in argument list test byte ptr [%rdi+msr], (1<<4) # MSR_DR ^ jitc_mmu.S:650: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:650:6: error: Unexpected token! 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:650: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:650:38: error: Unexpected token! 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:650: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:650:72: error: Unexpected token! 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:650: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:650:88: error: Unexpected token! 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:650:106: error: Unexpected token! 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:650:100: error: invalid operand for instruction 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:650:122: error: Unexpected token! 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:650:122: error: unexpected token in argument list 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:650: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:650:141: error: Unexpected token! 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:650: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:650:155: error: Unexpected token! 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:650:171: error: Unexpected token! 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:650:171: error: unexpected token in argument list 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:650:202: error: Unexpected token! 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:650:197: error: invalid operand for instruction 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:650: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:650:208: error: Unexpected token! 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:650: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:650:224: error: Unexpected token! 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:650: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:650:240: error: Unexpected token! 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:650: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:650:262: error: Unexpected token! 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:650: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:650:294: error: Unexpected token! 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:650: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:650:328: error: Unexpected token! 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:650: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:650:342: error: Unexpected token! 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:650: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:650:358: error: Unexpected token! 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:650: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:650:374: error: Unexpected token! 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:650: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:650: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:650:407: error: Unexpected token! 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:650:433: error: Unexpected token! 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:650:428: error: invalid operand for instruction 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:650: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:650:439: error: Unexpected token! 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:650: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:650:472: error: Unexpected token! 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:650:489: error: Unexpected token! 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:650:489: error: unexpected token in argument list 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:650:531: error: Unexpected token! 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:650:531: error: unexpected token in argument list 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:650: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:650: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:650:589: error: Unexpected token! 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:650: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:650:625: error: Unexpected token! 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:650:649: error: Unexpected token! 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:650:643: error: unknown use of instruction mnemonic without a size suffix 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:650: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:650:655: error: Unexpected token! 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:650:678: error: Unexpected token! 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:650:673: error: invalid operand for instruction 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:650: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:650:684: error: Unexpected token! 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:650: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:650:706: error: Unexpected token! 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:650:734: error: Unexpected token! 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:650:728: error: unknown use of instruction mnemonic without a size suffix 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:651: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:651:6: error: Unexpected token! 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:651: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:651:38: error: Unexpected token! 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:651: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:651:72: error: Unexpected token! 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:651: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:651:88: error: Unexpected token! 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:651:106: error: Unexpected token! 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:651:100: error: invalid operand for instruction 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:651:122: error: Unexpected token! 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:651:122: error: unexpected token in argument list 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:651: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:651:141: error: Unexpected token! 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:651: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:651:155: error: Unexpected token! 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:651:171: error: Unexpected token! 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:651:171: error: unexpected token in argument list 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:651:202: error: Unexpected token! 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:651:197: error: invalid operand for instruction 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:651: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:651:208: error: Unexpected token! 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:651: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:651:224: error: Unexpected token! 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:651: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:651:240: error: Unexpected token! 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:651: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:651:262: error: Unexpected token! 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:651: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:651:294: error: Unexpected token! 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:651: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:651:328: error: Unexpected token! 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:651: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:651:342: error: Unexpected token! 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:651: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:651:358: error: Unexpected token! 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:651: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:651:374: error: Unexpected token! 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:651: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:651: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:651:407: error: Unexpected token! 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:651:433: error: Unexpected token! 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:651:428: error: invalid operand for instruction 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:651: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:651:439: error: Unexpected token! 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:651: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:651:472: error: Unexpected token! 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:651:489: error: Unexpected token! 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:651:489: error: unexpected token in argument list 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:651:531: error: Unexpected token! 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:651:531: error: unexpected token in argument list 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:651: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:651: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:651:589: error: Unexpected token! 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:651: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:651:625: error: Unexpected token! 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:651:649: error: Unexpected token! 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:651:643: error: unknown use of instruction mnemonic without a size suffix 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:651: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:651:655: error: Unexpected token! 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:651:678: error: Unexpected token! 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:651:673: error: invalid operand for instruction 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:651: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:651:684: error: Unexpected token! 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:651: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:651:706: error: Unexpected token! 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:651:734: error: Unexpected token! 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:651:728: error: unknown use of instruction mnemonic without a size suffix 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:652: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:652:6: error: Unexpected token! 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:652: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:652:38: error: Unexpected token! 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:652: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:652:72: error: Unexpected token! 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:652: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:652:88: error: Unexpected token! 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:652:106: error: Unexpected token! 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:652:100: error: invalid operand for instruction 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:652:122: error: Unexpected token! 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:652:122: error: unexpected token in argument list 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:652: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:652:141: error: Unexpected token! 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:652: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:652:155: error: Unexpected token! 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:652:171: error: Unexpected token! 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:652:171: error: unexpected token in argument list 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:652:202: error: Unexpected token! 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:652:197: error: invalid operand for instruction 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:652: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:652:208: error: Unexpected token! 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:652: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:652:224: error: Unexpected token! 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:652: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:652:240: error: Unexpected token! 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:652: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:652:262: error: Unexpected token! 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:652: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:652:294: error: Unexpected token! 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:652: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:652:328: error: Unexpected token! 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:652: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:652:342: error: Unexpected token! 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:652: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:652:358: error: Unexpected token! 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:652: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:652:374: error: Unexpected token! 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:652: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:652: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:652:407: error: Unexpected token! 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:652:433: error: Unexpected token! 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:652:428: error: invalid operand for instruction 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:652: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:652:439: error: Unexpected token! 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:652: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:652:472: error: Unexpected token! 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:652:489: error: Unexpected token! 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:652:489: error: unexpected token in argument list 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:652:531: error: Unexpected token! 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:652:531: error: unexpected token in argument list 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:652: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:652: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:652:589: error: Unexpected token! 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:652: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:652:625: error: Unexpected token! 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:652:649: error: Unexpected token! 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:652:643: error: unknown use of instruction mnemonic without a size suffix 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:652: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:652:655: error: Unexpected token! 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:652:678: error: Unexpected token! 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:652:673: error: invalid operand for instruction 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:652: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:652:684: error: Unexpected token! 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:652: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:652:706: error: Unexpected token! 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:652:734: error: Unexpected token! 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:652:728: error: unknown use of instruction mnemonic without a size suffix 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:653: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:653:6: error: Unexpected token! 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:653: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:653:38: error: Unexpected token! 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:653: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:653:72: error: Unexpected token! 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:653: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:653:88: error: Unexpected token! 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:653:106: error: Unexpected token! 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:653:100: error: invalid operand for instruction 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:653:122: error: Unexpected token! 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:653:122: error: unexpected token in argument list 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:653: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:653:141: error: Unexpected token! 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:653: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:653:155: error: Unexpected token! 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:653:171: error: Unexpected token! 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:653:171: error: unexpected token in argument list 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:653:202: error: Unexpected token! 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:653:197: error: invalid operand for instruction 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:653: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:653:208: error: Unexpected token! 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:653: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:653:224: error: Unexpected token! 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:653: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:653:240: error: Unexpected token! 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:653: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:653:262: error: Unexpected token! 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:653: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:653:294: error: Unexpected token! 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:653: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:653:328: error: Unexpected token! 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:653: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:653:342: error: Unexpected token! 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:653: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:653:358: error: Unexpected token! 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:653: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:653:374: error: Unexpected token! 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:653: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:653: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:653:407: error: Unexpected token! 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:653:433: error: Unexpected token! 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:653:428: error: invalid operand for instruction 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:653: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:653:439: error: Unexpected token! 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:653: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:653:472: error: Unexpected token! 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:653:489: error: Unexpected token! 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:653:489: error: unexpected token in argument list 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:653:531: error: Unexpected token! 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:653:531: error: unexpected token in argument list 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:653: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:653: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:653:589: error: Unexpected token! 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:653: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:653:625: error: Unexpected token! 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:653:649: error: Unexpected token! 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:653:643: error: unknown use of instruction mnemonic without a size suffix 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:653: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:653:655: error: Unexpected token! 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:653:678: error: Unexpected token! 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:653:673: error: invalid operand for instruction 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:653: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:653:684: error: Unexpected token! 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:653: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:653:706: error: Unexpected token! 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:653:734: error: Unexpected token! 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:653:728: error: unknown use of instruction mnemonic without a size suffix 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:655:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:655:6: error: Unexpected token! mov %ebx, %eax ^ jitc_mmu.S:656:6: error: unknown token in expression shr %eax, 28 # SR ^ jitc_mmu.S:656:6: error: Unexpected token! shr %eax, 28 # SR ^ jitc_mmu.S:657:6: error: unknown token in expression mov %edx, [%rdi+sr+4*%rax] ^ jitc_mmu.S:657:6: error: Unexpected token! mov %edx, [%rdi+sr+4*%rax] ^ jitc_mmu.S:662:6: error: unknown token in expression mov %eax, %ebx ^ jitc_mmu.S:662:6: error: Unexpected token! mov %eax, %ebx ^ jitc_mmu.S:663:6: error: unknown token in expression mov %r8d, %ebx ^ jitc_mmu.S:663:6: error: Unexpected token! mov %r8d, %ebx ^ jitc_mmu.S:664:6: error: unknown token in expression mov %r12d, %edx ^ jitc_mmu.S:664:6: error: Unexpected token! mov %r12d, %edx ^ jitc_mmu.S:665:6: error: unknown token in expression shr %ebx, 12 ^ jitc_mmu.S:665:6: error: Unexpected token! shr %ebx, 12 ^ jitc_mmu.S:666:6: error: unknown token in expression and %ebx, 0xffff ^ jitc_mmu.S:666:6: error: Unexpected token! and %ebx, 0xffff ^ jitc_mmu.S:667:6: error: unknown token in expression shr %r8d, 22 ^ jitc_mmu.S:667:6: error: Unexpected token! shr %r8d, 22 ^ jitc_mmu.S:668:6: error: unknown token in expression and %r12d, 0xffffff ^ jitc_mmu.S:668:6: error: Unexpected token! and %r12d, 0xffffff ^ jitc_mmu.S:669:6: error: unknown token in expression and %r8d, 0x3f ^ jitc_mmu.S:669:6: error: Unexpected token! and %r8d, 0x3f ^ jitc_mmu.S:682:6: error: unknown token in expression xor %ebx, %r12d ^ jitc_mmu.S:682:6: error: Unexpected token! xor %ebx, %r12d ^ jitc_mmu.S:687:7: error: unknown token in expression push %rax ^ jitc_mmu.S:687:7: error: Unexpected token! push %rax ^ jitc_mmu.S:688:7: error: unknown token in expression push %rbx # das brauch ich ^ jitc_mmu.S:688:7: error: Unexpected token! push %rbx # das brauch ich ^ jitc_mmu.S:690:6: error: unknown token in expression and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:690:6: error: Unexpected token! and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:691:6: error: unknown token in expression shl %ebx, 6 ^ jitc_mmu.S:691:6: error: Unexpected token! shl %ebx, 6 ^ jitc_mmu.S:692:5: error: unknown token in expression or %ebx, [%rdi+pagetable_base] ^ jitc_mmu.S:692:5: error: Unexpected token! or %ebx, [%rdi+pagetable_base] ^ jitc_mmu.S:697: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:697:6: error: Unexpected token! 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:697: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:697:27: error: Unexpected token! 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:697: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:697:58: error: Unexpected token! 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:697: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:697:68: error: Unexpected token! 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:697: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:697:84: error: Unexpected token! 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:697: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:697:112: error: Unexpected token! 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:697:139: error: Unexpected token! 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:697:133: error: invalid operand for instruction 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:697: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:697:145: error: Unexpected token! 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:697: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:697:161: error: Unexpected token! 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:697: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:697:174: error: Unexpected token! 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:697: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:697:194: error: Unexpected token! 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:697:213: error: Unexpected token! 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:697:207: error: invalid operand for instruction 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:697: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:697:219: error: Unexpected token! 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:697: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:697:235: error: Unexpected token! 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:697:253: error: Unexpected token! 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:697:247: error: invalid operand for instruction 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:697: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:697:259: error: Unexpected token! 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:697: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:697:280: error: Unexpected token! 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:697: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:697:315: error: Unexpected token! 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:697:337: error: Unexpected token! 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:697:337: error: unexpected token in argument list 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:697: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:697:361: error: Unexpected token! 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:697: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:697:381: error: Unexpected token! 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:697: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:697:390: error: Unexpected token! 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:697: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:697:406: error: Unexpected token! 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:697: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:697:424: error: Unexpected token! 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:697: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:697:435: error: Unexpected token! 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:697: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:697:450: error: Unexpected token! 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:697: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:697:466: error: Unexpected token! 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:697:518: error: Unexpected token! 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:697:518: error: unexpected token in argument list 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:697: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:697:549: error: Unexpected token! 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:697: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:697:567: error: Unexpected token! 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:697: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:697:606: error: Unexpected token! 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:697: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:697:655: error: Unexpected token! 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:697: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:697:692: error: Unexpected token! 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:697: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:697:702: error: Unexpected token! 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:697:724: error: Unexpected token! 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:697:724: error: unexpected token in argument list 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:697: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:697:745: error: Unexpected token! 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:697: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:697:767: error: Unexpected token! 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:697: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:697:783: error: Unexpected token! 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:697: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:697:799: error: Unexpected token! 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:697: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:697:813: error: Unexpected token! 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:697: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:697:835: error: Unexpected token! 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:697: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:697:852: error: Unexpected token! 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:697: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:697:868: error: Unexpected token! 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:697: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:697: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:697:900: error: Unexpected token! 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:697:926: error: Unexpected token! 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:697:921: error: invalid operand for instruction 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:697: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:697:932: error: Unexpected token! 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:697:966: error: Unexpected token! 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:697:966: error: unexpected token in argument list 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:697:1008: error: Unexpected token! 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:697:1008: error: unexpected token in argument list 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:697: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:697:1050: error: Unexpected token! 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:697: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:697: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:697:1097: error: Unexpected token! 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:697:1121: error: Unexpected token! 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:697:1115: error: unknown use of instruction mnemonic without a size suffix 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:697: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:697:1127: error: Unexpected token! 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:697:1150: error: Unexpected token! 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:697:1145: error: invalid operand for instruction 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:697: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:697:1180: error: Unexpected token! 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:697: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:697:1206: error: Unexpected token! 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:697:1230: error: Unexpected token! 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:697:1224: error: unknown use of instruction mnemonic without a size suffix 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:697: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:697:1239: error: Unexpected token! 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:698: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:698:6: error: Unexpected token! 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:698: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:698:27: error: Unexpected token! 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:698: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:698:58: error: Unexpected token! 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:698: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:698:68: error: Unexpected token! 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:698: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:698:84: error: Unexpected token! 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:698: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:698:112: error: Unexpected token! 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:698:139: error: Unexpected token! 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:698:133: error: invalid operand for instruction 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:698: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:698:145: error: Unexpected token! 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:698: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:698:161: error: Unexpected token! 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:698: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:698:174: error: Unexpected token! 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:698: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:698:194: error: Unexpected token! 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:698:213: error: Unexpected token! 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:698:207: error: invalid operand for instruction 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:698: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:698:219: error: Unexpected token! 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:698: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:698:235: error: Unexpected token! 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:698:253: error: Unexpected token! 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:698:247: error: invalid operand for instruction 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:698: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:698:259: error: Unexpected token! 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:698: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:698:280: error: Unexpected token! 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:698: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:698:315: error: Unexpected token! 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:698:337: error: Unexpected token! 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:698:337: error: unexpected token in argument list 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:698: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:698:361: error: Unexpected token! 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:698: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:698:381: error: Unexpected token! 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:698: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:698:390: error: Unexpected token! 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:698: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:698:406: error: Unexpected token! 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:698: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:698:424: error: Unexpected token! 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:698: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:698:435: error: Unexpected token! 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:698: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:698:450: error: Unexpected token! 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:698: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:698:466: error: Unexpected token! 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:698:518: error: Unexpected token! 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:698:518: error: unexpected token in argument list 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:698: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:698:549: error: Unexpected token! 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:698: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:698:567: error: Unexpected token! 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:698: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:698:606: error: Unexpected token! 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:698: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:698:655: error: Unexpected token! 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:698: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:698:692: error: Unexpected token! 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:698: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:698:702: error: Unexpected token! 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:698:724: error: Unexpected token! 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:698:724: error: unexpected token in argument list 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:698: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:698:745: error: Unexpected token! 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:698: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:698:767: error: Unexpected token! 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:698: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:698:783: error: Unexpected token! 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:698: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:698:799: error: Unexpected token! 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:698: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:698:813: error: Unexpected token! 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:698: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:698:835: error: Unexpected token! 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:698: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:698:852: error: Unexpected token! 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:698: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:698:868: error: Unexpected token! 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:698: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:698: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:698:900: error: Unexpected token! 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:698:926: error: Unexpected token! 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:698:921: error: invalid operand for instruction 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:698: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:698:932: error: Unexpected token! 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:698:966: error: Unexpected token! 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:698:966: error: unexpected token in argument list 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:698:1008: error: Unexpected token! 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:698:1008: error: unexpected token in argument list 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:698: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:698:1050: error: Unexpected token! 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:698: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:698: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:698:1097: error: Unexpected token! 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:698:1121: error: Unexpected token! 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:698:1115: error: unknown use of instruction mnemonic without a size suffix 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:698: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:698:1127: error: Unexpected token! 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:698:1150: error: Unexpected token! 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:698:1145: error: invalid operand for instruction 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:698: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:698:1180: error: Unexpected token! 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:698: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:698:1206: error: Unexpected token! 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:698:1230: error: Unexpected token! 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:698:1224: error: unknown use of instruction mnemonic without a size suffix 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:698: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:698:1239: error: Unexpected token! 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:699: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:699:6: error: Unexpected token! 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:699: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:699:27: error: Unexpected token! 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:699: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:699:59: error: Unexpected token! 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:699: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:699:69: error: Unexpected token! 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:699: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:699:85: error: Unexpected token! 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:699: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:699:113: error: Unexpected token! 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:699:140: error: Unexpected token! 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:699:134: error: invalid operand for instruction 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:699: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:699:146: error: Unexpected token! 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:699: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:699:162: error: Unexpected token! 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:699: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:699:175: error: Unexpected token! 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:699: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:699:195: error: Unexpected token! 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:699:214: error: Unexpected token! 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:699:208: error: invalid operand for instruction 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:699: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:699:220: error: Unexpected token! 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:699: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:699:236: error: Unexpected token! 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:699:254: error: Unexpected token! 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:699:248: error: invalid operand for instruction 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:699: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:699:260: error: Unexpected token! 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:699: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:699:281: error: Unexpected token! 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:699: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:699:317: error: Unexpected token! 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:699:339: error: Unexpected token! 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:699:339: error: unexpected token in argument list 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:699: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:699:363: error: Unexpected token! 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:699: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:699:383: error: Unexpected token! 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:699: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:699:392: error: Unexpected token! 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:699: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:699:408: error: Unexpected token! 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:699: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:699:426: error: Unexpected token! 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:699: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:699:437: error: Unexpected token! 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:699: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:699:452: error: Unexpected token! 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:699: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:699:468: error: Unexpected token! 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:699:520: error: Unexpected token! 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:699:520: error: unexpected token in argument list 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:699: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:699:551: error: Unexpected token! 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:699: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:699:569: error: Unexpected token! 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:699: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:699:608: error: Unexpected token! 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:699: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:699:657: error: Unexpected token! 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:699: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:699:694: error: Unexpected token! 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:699: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:699:704: error: Unexpected token! 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:699:726: error: Unexpected token! 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:699:726: error: unexpected token in argument list 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:699: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:699:748: error: Unexpected token! 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:699: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:699:770: error: Unexpected token! 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:699: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:699:786: error: Unexpected token! 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:699: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:699:802: error: Unexpected token! 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:699: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:699:816: error: Unexpected token! 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:699: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:699:838: error: Unexpected token! 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:699: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:699:855: error: Unexpected token! 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:699: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:699:871: error: Unexpected token! 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:699: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:699: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:699:903: error: Unexpected token! 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:699:929: error: Unexpected token! 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:699:924: error: invalid operand for instruction 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:699: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:699:935: error: Unexpected token! 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:699:969: error: Unexpected token! 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:699:969: error: unexpected token in argument list 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:699:1011: error: Unexpected token! 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:699:1011: error: unexpected token in argument list 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:699: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:699:1053: error: Unexpected token! 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:699: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:699: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:699:1100: error: Unexpected token! 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:699:1124: error: Unexpected token! 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:699:1118: error: unknown use of instruction mnemonic without a size suffix 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:699: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:699:1130: error: Unexpected token! 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:699:1153: error: Unexpected token! 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:699:1148: error: invalid operand for instruction 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:699: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:699:1183: error: Unexpected token! 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:699: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:699:1209: error: Unexpected token! 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:699:1233: error: Unexpected token! 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:699:1227: error: unknown use of instruction mnemonic without a size suffix 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:699: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:699:1242: error: Unexpected token! 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:700: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:700:6: error: Unexpected token! 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:700: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:700:27: error: Unexpected token! 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:700: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:700:59: error: Unexpected token! 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:700: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:700:69: error: Unexpected token! 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:700: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:700:85: error: Unexpected token! 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:700: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:700:113: error: Unexpected token! 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:700:140: error: Unexpected token! 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:700:134: error: invalid operand for instruction 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:700: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:700:146: error: Unexpected token! 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:700: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:700:162: error: Unexpected token! 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:700: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:700:175: error: Unexpected token! 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:700: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:700:195: error: Unexpected token! 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:700:214: error: Unexpected token! 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:700:208: error: invalid operand for instruction 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:700: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:700:220: error: Unexpected token! 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:700: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:700:236: error: Unexpected token! 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:700:254: error: Unexpected token! 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:700:248: error: invalid operand for instruction 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:700: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:700:260: error: Unexpected token! 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:700: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:700:281: error: Unexpected token! 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:700: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:700:317: error: Unexpected token! 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:700:339: error: Unexpected token! 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:700:339: error: unexpected token in argument list 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:700: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:700:363: error: Unexpected token! 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:700: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:700:383: error: Unexpected token! 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:700: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:700:392: error: Unexpected token! 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:700: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:700:408: error: Unexpected token! 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:700: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:700:426: error: Unexpected token! 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:700: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:700:437: error: Unexpected token! 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:700: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:700:452: error: Unexpected token! 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:700: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:700:468: error: Unexpected token! 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:700:520: error: Unexpected token! 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:700:520: error: unexpected token in argument list 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:700: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:700:551: error: Unexpected token! 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:700: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:700:569: error: Unexpected token! 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:700: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:700:608: error: Unexpected token! 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:700: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:700:657: error: Unexpected token! 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:700: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:700:694: error: Unexpected token! 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:700: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:700:704: error: Unexpected token! 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:700:726: error: Unexpected token! 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:700:726: error: unexpected token in argument list 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:700: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:700:748: error: Unexpected token! 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:700: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:700:770: error: Unexpected token! 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:700: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:700:786: error: Unexpected token! 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:700: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:700:802: error: Unexpected token! 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:700: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:700:816: error: Unexpected token! 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:700: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:700:838: error: Unexpected token! 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:700: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:700:855: error: Unexpected token! 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:700: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:700:871: error: Unexpected token! 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:700: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:700: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:700:903: error: Unexpected token! 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:700:929: error: Unexpected token! 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:700:924: error: invalid operand for instruction 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:700: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:700:935: error: Unexpected token! 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:700:969: error: Unexpected token! 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:700:969: error: unexpected token in argument list 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:700:1011: error: Unexpected token! 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:700:1011: error: unexpected token in argument list 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:700: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:700:1053: error: Unexpected token! 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:700: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:700: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:700:1100: error: Unexpected token! 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:700:1124: error: Unexpected token! 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:700:1118: error: unknown use of instruction mnemonic without a size suffix 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:700: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:700:1130: error: Unexpected token! 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:700:1153: error: Unexpected token! 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:700:1148: error: invalid operand for instruction 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:700: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:700:1183: error: Unexpected token! 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:700: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:700:1209: error: Unexpected token! 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:700:1233: error: Unexpected token! 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:700:1227: error: unknown use of instruction mnemonic without a size suffix 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:700: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:700:1242: error: Unexpected token! 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:701: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:701:6: error: Unexpected token! 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:701: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:701:27: error: Unexpected token! 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:701: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:701:59: error: Unexpected token! 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:701: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:701:69: error: Unexpected token! 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:701: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:701:85: error: Unexpected token! 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:701: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:701:113: error: Unexpected token! 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:701:140: error: Unexpected token! 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:701:134: error: invalid operand for instruction 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:701: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:701:146: error: Unexpected token! 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:701: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:701:162: error: Unexpected token! 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:701: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:701:175: error: Unexpected token! 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:701: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:701:195: error: Unexpected token! 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:701:214: error: Unexpected token! 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:701:208: error: invalid operand for instruction 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:701: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:701:220: error: Unexpected token! 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:701: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:701:236: error: Unexpected token! 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:701:254: error: Unexpected token! 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:701:248: error: invalid operand for instruction 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:701: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:701:260: error: Unexpected token! 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:701: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:701:281: error: Unexpected token! 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:701: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:701:317: error: Unexpected token! 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:701:339: error: Unexpected token! 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:701:339: error: unexpected token in argument list 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:701: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:701:363: error: Unexpected token! 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:701: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:701:383: error: Unexpected token! 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:701: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:701:392: error: Unexpected token! 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:701: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:701:408: error: Unexpected token! 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:701: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:701:426: error: Unexpected token! 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:701: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:701:437: error: Unexpected token! 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:701: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:701:452: error: Unexpected token! 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:701: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:701:468: error: Unexpected token! 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:701:520: error: Unexpected token! 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:701:520: error: unexpected token in argument list 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:701: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:701:551: error: Unexpected token! 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:701: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:701:569: error: Unexpected token! 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:701: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:701:608: error: Unexpected token! 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:701: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:701:657: error: Unexpected token! 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:701: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:701:694: error: Unexpected token! 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:701: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:701:704: error: Unexpected token! 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:701:726: error: Unexpected token! 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:701:726: error: unexpected token in argument list 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:701: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:701:748: error: Unexpected token! 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:701: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:701:770: error: Unexpected token! 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:701: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:701:786: error: Unexpected token! 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:701: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:701:802: error: Unexpected token! 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:701: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:701:816: error: Unexpected token! 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:701: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:701:838: error: Unexpected token! 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:701: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:701:855: error: Unexpected token! 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:701: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:701:871: error: Unexpected token! 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:701: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:701: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:701:903: error: Unexpected token! 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:701:929: error: Unexpected token! 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:701:924: error: invalid operand for instruction 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:701: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:701:935: error: Unexpected token! 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:701:969: error: Unexpected token! 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:701:969: error: unexpected token in argument list 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:701:1011: error: Unexpected token! 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:701:1011: error: unexpected token in argument list 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:701: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:701:1053: error: Unexpected token! 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:701: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:701: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:701:1100: error: Unexpected token! 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:701:1124: error: Unexpected token! 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:701:1118: error: unknown use of instruction mnemonic without a size suffix 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:701: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:701:1130: error: Unexpected token! 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:701:1153: error: Unexpected token! 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:701:1148: error: invalid operand for instruction 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:701: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:701:1183: error: Unexpected token! 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:701: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:701:1209: error: Unexpected token! 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:701:1233: error: Unexpected token! 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:701:1227: error: unknown use of instruction mnemonic without a size suffix 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:701: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:701:1242: error: Unexpected token! 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:702: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:702:6: error: Unexpected token! 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:702: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:702:27: error: Unexpected token! 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:702: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:702:59: error: Unexpected token! 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:702: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:702:69: error: Unexpected token! 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:702: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:702:85: error: Unexpected token! 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:702: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:702:113: error: Unexpected token! 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:702:140: error: Unexpected token! 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:702:134: error: invalid operand for instruction 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:702: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:702:146: error: Unexpected token! 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:702: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:702:162: error: Unexpected token! 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:702: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:702:175: error: Unexpected token! 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:702: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:702:195: error: Unexpected token! 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:702:214: error: Unexpected token! 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:702:208: error: invalid operand for instruction 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:702: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:702:220: error: Unexpected token! 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:702: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:702:236: error: Unexpected token! 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:702:254: error: Unexpected token! 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:702:248: error: invalid operand for instruction 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:702: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:702:260: error: Unexpected token! 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:702: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:702:281: error: Unexpected token! 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:702: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:702:317: error: Unexpected token! 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:702:339: error: Unexpected token! 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:702:339: error: unexpected token in argument list 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:702: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:702:363: error: Unexpected token! 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:702: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:702:383: error: Unexpected token! 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:702: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:702:392: error: Unexpected token! 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:702: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:702:408: error: Unexpected token! 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:702: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:702:426: error: Unexpected token! 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:702: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:702:437: error: Unexpected token! 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:702: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:702:452: error: Unexpected token! 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:702: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:702:468: error: Unexpected token! 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:702:520: error: Unexpected token! 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:702:520: error: unexpected token in argument list 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:702: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:702:551: error: Unexpected token! 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:702: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:702:569: error: Unexpected token! 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:702: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:702:608: error: Unexpected token! 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:702: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:702:657: error: Unexpected token! 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:702: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:702:694: error: Unexpected token! 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:702: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:702:704: error: Unexpected token! 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:702:726: error: Unexpected token! 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:702:726: error: unexpected token in argument list 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:702: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:702:748: error: Unexpected token! 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:702: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:702:770: error: Unexpected token! 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:702: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:702:786: error: Unexpected token! 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:702: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:702:802: error: Unexpected token! 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:702: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:702:816: error: Unexpected token! 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:702: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:702:838: error: Unexpected token! 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:702: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:702:855: error: Unexpected token! 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:702: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:702:871: error: Unexpected token! 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:702: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:702: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:702:903: error: Unexpected token! 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:702:929: error: Unexpected token! 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:702:924: error: invalid operand for instruction 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:702: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:702:935: error: Unexpected token! 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:702:969: error: Unexpected token! 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:702:969: error: unexpected token in argument list 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:702:1011: error: Unexpected token! 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:702:1011: error: unexpected token in argument list 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:702: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:702:1053: error: Unexpected token! 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:702: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: ^ jitc_mmu.S:702: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:702:1100: error: Unexpected token! 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:702:1124: error: Unexpected token! 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:702:1118: error: unknown use of instruction mnemonic without a size suffix 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:702: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:702:1130: error: Unexpected token! 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:702:1153: error: Unexpected token! 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:702:1148: error: invalid operand for instruction 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:702: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:702:1183: error: Unexpected token! 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:702: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:702:1209: error: Unexpected token! 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:702:1233: error: Unexpected token! 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:702:1227: error: unknown use of instruction mnemonic without a size suffix 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:702: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:702:1242: error: Unexpected token! 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:703: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:703:6: error: Unexpected token! 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:703: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:703:27: error: Unexpected token! 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:703: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:703:59: error: Unexpected token! 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:703: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:703:69: error: Unexpected token! 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:703: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:703:85: error: Unexpected token! 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:703: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:703:113: error: Unexpected token! 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:703:140: error: Unexpected token! 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:703:134: error: invalid operand for instruction 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:703: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:703:146: error: Unexpected token! 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:703: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:703:162: error: Unexpected token! 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:703: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:703:175: error: Unexpected token! 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:703: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:703:195: error: Unexpected token! 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:703:214: error: Unexpected token! 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:703:208: error: invalid operand for instruction 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:703: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:703:220: error: Unexpected token! 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:703: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:703:236: error: Unexpected token! 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:703:254: error: Unexpected token! 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:703:248: error: invalid operand for instruction 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:703: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:703:260: error: Unexpected token! 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:703: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:703:281: error: Unexpected token! 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:703: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:703:317: error: Unexpected token! 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:703:339: error: Unexpected token! 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:703:339: error: unexpected token in argument list 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:703: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:703:363: error: Unexpected token! 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:703: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:703:383: error: Unexpected token! 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:703: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:703:392: error: Unexpected token! 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:703: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:703:408: error: Unexpected token! 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:703: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:703:426: error: Unexpected token! 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:703: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:703:437: error: Unexpected token! 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:703: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:703:452: error: Unexpected token! 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:703: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:703:468: error: Unexpected token! 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:703:520: error: Unexpected token! 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:703:520: error: unexpected token in argument list 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:703: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:703:551: error: Unexpected token! 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:703: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:703:569: error: Unexpected token! 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:703: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:703:608: error: Unexpected token! 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:703: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:703:657: error: Unexpected token! 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:703: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:703:694: error: Unexpected token! 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:703: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:703:704: error: Unexpected token! 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:703:726: error: Unexpected token! 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:703:726: error: unexpected token in argument list 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:703: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:703:748: error: Unexpected token! 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:703: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:703:770: error: Unexpected token! 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:703: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:703:786: error: Unexpected token! 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:703: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:703:802: error: Unexpected token! 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:703: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:703:816: error: Unexpected token! 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:703: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:703:838: error: Unexpected token! 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:703: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:703:855: error: Unexpected token! 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:703: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:703:871: error: Unexpected token! 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:703: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:703: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:703:903: error: Unexpected token! 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:703:929: error: Unexpected token! 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:703:924: error: invalid operand for instruction 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:703: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:703:935: error: Unexpected token! 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:703:969: error: Unexpected token! 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:703:969: error: unexpected token in argument list 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:703:1011: error: Unexpected token! 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:703:1011: error: unexpected token in argument list 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:703: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:703:1053: error: Unexpected token! 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:703: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:703: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:703:1100: error: Unexpected token! 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:703:1124: error: Unexpected token! 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:703:1118: error: unknown use of instruction mnemonic without a size suffix 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:703: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:703:1130: error: Unexpected token! 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:703:1153: error: Unexpected token! 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:703:1148: error: invalid operand for instruction 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:703: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:703:1183: error: Unexpected token! 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:703: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:703:1209: error: Unexpected token! 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:703:1233: error: Unexpected token! 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:703:1227: error: unknown use of instruction mnemonic without a size suffix 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:703: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:703:1242: error: Unexpected token! 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:704: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:704:6: error: Unexpected token! 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:704: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:704:27: error: Unexpected token! 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:704: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:704:59: error: Unexpected token! 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:704: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:704:69: error: Unexpected token! 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:704: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:704:85: error: Unexpected token! 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:704: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:704:113: error: Unexpected token! 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:704:140: error: Unexpected token! 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:704:134: error: invalid operand for instruction 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:704: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:704:146: error: Unexpected token! 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:704: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:704:162: error: Unexpected token! 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:704: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:704:175: error: Unexpected token! 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:704: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:704:195: error: Unexpected token! 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:704:214: error: Unexpected token! 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:704:208: error: invalid operand for instruction 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:704: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:704:220: error: Unexpected token! 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:704: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:704:236: error: Unexpected token! 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:704:254: error: Unexpected token! 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:704:248: error: invalid operand for instruction 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:704: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:704:260: error: Unexpected token! 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:704: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:704:281: error: Unexpected token! 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:704: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:704:317: error: Unexpected token! 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:704:339: error: Unexpected token! 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:704:339: error: unexpected token in argument list 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:704: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:704:363: error: Unexpected token! 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:704: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:704:383: error: Unexpected token! 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:704: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:704:392: error: Unexpected token! 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:704: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:704:408: error: Unexpected token! 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:704: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:704:426: error: Unexpected token! 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:704: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:704:437: error: Unexpected token! 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:704: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:704:452: error: Unexpected token! 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:704: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:704:468: error: Unexpected token! 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:704:520: error: Unexpected token! 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:704:520: error: unexpected token in argument list 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:704: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:704:551: error: Unexpected token! 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:704: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:704:569: error: Unexpected token! 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:704: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:704:608: error: Unexpected token! 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:704: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:704:657: error: Unexpected token! 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:704: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:704:694: error: Unexpected token! 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:704: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:704:704: error: Unexpected token! 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:704:726: error: Unexpected token! 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:704:726: error: unexpected token in argument list 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:704: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:704:748: error: Unexpected token! 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:704: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:704:770: error: Unexpected token! 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:704: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:704:786: error: Unexpected token! 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:704: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:704:802: error: Unexpected token! 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:704: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:704:816: error: Unexpected token! 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:704: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:704:838: error: Unexpected token! 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:704: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:704:855: error: Unexpected token! 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:704: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:704:871: error: Unexpected token! 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:704: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:704: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:704:903: error: Unexpected token! 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:704:929: error: Unexpected token! 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:704:924: error: invalid operand for instruction 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:704: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:704:935: error: Unexpected token! 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:704:969: error: Unexpected token! 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:704:969: error: unexpected token in argument list 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:704:1011: error: Unexpected token! 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:704:1011: error: unexpected token in argument list 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:704: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:704:1053: error: Unexpected token! 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:704: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:704: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:704:1100: error: Unexpected token! 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:704:1124: error: Unexpected token! 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:704:1118: error: unknown use of instruction mnemonic without a size suffix 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:704: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:704:1130: error: Unexpected token! 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:704:1153: error: Unexpected token! 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:704:1148: error: invalid operand for instruction 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:704: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:704:1183: error: Unexpected token! 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:704: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:704:1209: error: Unexpected token! 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:704:1233: error: Unexpected token! 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:704:1227: error: unknown use of instruction mnemonic without a size suffix 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:704: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:704:1242: error: Unexpected token! 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:708:6: error: unknown token in expression mov %ebx, [%rsp] ^ jitc_mmu.S:708:6: error: Unexpected token! mov %ebx, [%rsp] ^ jitc_mmu.S:709:6: error: unknown token in expression add %rsp, 8 ^ jitc_mmu.S:709:6: error: Unexpected token! add %rsp, 8 ^ jitc_mmu.S:710:6: error: unknown token in expression not %ebx ^ jitc_mmu.S:710:6: error: Unexpected token! not %ebx ^ jitc_mmu.S:711:6: error: unknown token in expression and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:711:6: error: Unexpected token! and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:712:6: error: unknown token in expression shl %ebx, 6 ^ jitc_mmu.S:712:6: error: Unexpected token! shl %ebx, 6 ^ jitc_mmu.S:713:5: error: unknown token in expression or %ebx, [%rdi+pagetable_base] ^ jitc_mmu.S:713:5: error: Unexpected token! or %ebx, [%rdi+pagetable_base] ^ jitc_mmu.S:715: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:715:6: error: Unexpected token! 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:715: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:715:27: error: Unexpected token! 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:715: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:715:58: error: Unexpected token! 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:715: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:715:68: error: Unexpected token! 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:715: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:715:84: error: Unexpected token! 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:715: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:715:112: error: Unexpected token! 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:715:142: error: Unexpected token! 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:715:136: error: invalid operand for instruction 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:715: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:715:148: error: Unexpected token! 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:715: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:715:164: error: Unexpected token! 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:715: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:715:177: error: Unexpected token! 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:715: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:715:197: error: Unexpected token! 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:715:216: error: Unexpected token! 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:715:210: error: invalid operand for instruction 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:715: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:715:222: error: Unexpected token! 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:715: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:715:238: error: Unexpected token! 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:715:256: error: Unexpected token! 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:715:250: error: invalid operand for instruction 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:715: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:715:262: error: Unexpected token! 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:715: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:715:283: error: Unexpected token! 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:715: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:715:318: error: Unexpected token! 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:715:340: error: Unexpected token! 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:715:340: error: unexpected token in argument list 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:715: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:715:364: error: Unexpected token! 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:715: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:715:384: error: Unexpected token! 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:715: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:715:393: error: Unexpected token! 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:715: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:715:409: error: Unexpected token! 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:715: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:715:427: error: Unexpected token! 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:715: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:715:438: error: Unexpected token! 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:715: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:715:453: error: Unexpected token! 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:715: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:715:469: error: Unexpected token! 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:715:521: error: Unexpected token! 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:715:521: error: unexpected token in argument list 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:715: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:715:573: error: Unexpected token! 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:715: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:715:612: error: Unexpected token! 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:715: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:715:661: error: Unexpected token! 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:715: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:715:698: error: Unexpected token! 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:715: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:715:708: error: Unexpected token! 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:715:730: error: Unexpected token! 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:715:730: error: unexpected token in argument list 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:715: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:715:751: error: Unexpected token! 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:715: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:715:773: error: Unexpected token! 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:715: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:715:789: error: Unexpected token! 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:715: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:715:805: error: Unexpected token! 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:715: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:715:819: error: Unexpected token! 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:715: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:715:841: error: Unexpected token! 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:715: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:715:858: error: Unexpected token! 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:715: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:715:874: error: Unexpected token! 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:715: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:715: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:715:906: error: Unexpected token! 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:715:932: error: Unexpected token! 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:715:927: error: invalid operand for instruction 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:715: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:715:938: error: Unexpected token! 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:715:972: error: Unexpected token! 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:715:972: error: unexpected token in argument list 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:715:1014: error: Unexpected token! 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:715:1014: error: unexpected token in argument list 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:715: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:715:1056: error: Unexpected token! 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:715: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:715: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:715:1103: error: Unexpected token! 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:715:1127: error: Unexpected token! 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:715:1121: error: unknown use of instruction mnemonic without a size suffix 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:715: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:715:1133: error: Unexpected token! 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:715:1156: error: Unexpected token! 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:715:1151: error: invalid operand for instruction 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:715: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:715:1186: error: Unexpected token! 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:715: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:715:1212: error: Unexpected token! 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:715:1236: error: Unexpected token! 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:715:1230: error: unknown use of instruction mnemonic without a size suffix 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:715: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:715:1245: error: Unexpected token! 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:716: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:716:6: error: Unexpected token! 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:716: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:716:27: error: Unexpected token! 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:716: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:716:58: error: Unexpected token! 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:716: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:716:68: error: Unexpected token! 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:716: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:716:84: error: Unexpected token! 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:716: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:716:112: error: Unexpected token! 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:716:142: error: Unexpected token! 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:716:136: error: invalid operand for instruction 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:716: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:716:148: error: Unexpected token! 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:716: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:716:164: error: Unexpected token! 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:716: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:716:177: error: Unexpected token! 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:716: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:716:197: error: Unexpected token! 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:716:216: error: Unexpected token! 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:716:210: error: invalid operand for instruction 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:716: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:716:222: error: Unexpected token! 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:716: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:716:238: error: Unexpected token! 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:716:256: error: Unexpected token! 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:716:250: error: invalid operand for instruction 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:716: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:716:262: error: Unexpected token! 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:716: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:716:283: error: Unexpected token! 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:716: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:716:318: error: Unexpected token! 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:716:340: error: Unexpected token! 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:716:340: error: unexpected token in argument list 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:716: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:716:364: error: Unexpected token! 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:716: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:716:384: error: Unexpected token! 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:716: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:716:393: error: Unexpected token! 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:716: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:716:409: error: Unexpected token! 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:716: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:716:427: error: Unexpected token! 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:716: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:716:438: error: Unexpected token! 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:716: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:716:453: error: Unexpected token! 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:716: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:716:469: error: Unexpected token! 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:716:521: error: Unexpected token! 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:716:521: error: unexpected token in argument list 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:716: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:716:573: error: Unexpected token! 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:716: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:716:612: error: Unexpected token! 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:716: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:716:661: error: Unexpected token! 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:716: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:716:698: error: Unexpected token! 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:716: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:716:708: error: Unexpected token! 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:716:730: error: Unexpected token! 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:716:730: error: unexpected token in argument list 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:716: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:716:751: error: Unexpected token! 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:716: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:716:773: error: Unexpected token! 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:716: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:716:789: error: Unexpected token! 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:716: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:716:805: error: Unexpected token! 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:716: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:716:819: error: Unexpected token! 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:716: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:716:841: error: Unexpected token! 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:716: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:716:858: error: Unexpected token! 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:716: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:716:874: error: Unexpected token! 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:716: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:716: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:716:906: error: Unexpected token! 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:716:932: error: Unexpected token! 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:716:927: error: invalid operand for instruction 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:716: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:716:938: error: Unexpected token! 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:716:972: error: Unexpected token! 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:716:972: error: unexpected token in argument list 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:716:1014: error: Unexpected token! 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:716:1014: error: unexpected token in argument list 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:716: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:716:1056: error: Unexpected token! 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:716: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:716: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:716:1103: error: Unexpected token! 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:716:1127: error: Unexpected token! 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:716:1121: error: unknown use of instruction mnemonic without a size suffix 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:716: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:716:1133: error: Unexpected token! 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:716:1156: error: Unexpected token! 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:716:1151: error: invalid operand for instruction 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:716: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:716:1186: error: Unexpected token! 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:716: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:716:1212: error: Unexpected token! 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:716:1236: error: Unexpected token! 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:716:1230: error: unknown use of instruction mnemonic without a size suffix 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:716: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:716:1245: error: Unexpected token! 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:717: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:717:6: error: Unexpected token! 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:717: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:717:27: error: Unexpected token! 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:717: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:717:59: error: Unexpected token! 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:717: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:717:69: error: Unexpected token! 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:717: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:717:85: error: Unexpected token! 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:717: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:717:113: error: Unexpected token! 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:717:143: error: Unexpected token! 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:717:137: error: invalid operand for instruction 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:717: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:717:149: error: Unexpected token! 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:717: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:717:165: error: Unexpected token! 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:717: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:717:178: error: Unexpected token! 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:717: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:717:198: error: Unexpected token! 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:717:217: error: Unexpected token! 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:717:211: error: invalid operand for instruction 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:717: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:717:223: error: Unexpected token! 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:717: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:717:239: error: Unexpected token! 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:717:257: error: Unexpected token! 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:717:251: error: invalid operand for instruction 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:717: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:717:263: error: Unexpected token! 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:717: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:717:284: error: Unexpected token! 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:717: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:717:320: error: Unexpected token! 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:717:342: error: Unexpected token! 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:717:342: error: unexpected token in argument list 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:717: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:717:366: error: Unexpected token! 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:717: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:717:386: error: Unexpected token! 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:717: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:717:395: error: Unexpected token! 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:717: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:717:411: error: Unexpected token! 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:717: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:717:429: error: Unexpected token! 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:717: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:717:440: error: Unexpected token! 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:717: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:717:455: error: Unexpected token! 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:717: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:717:471: error: Unexpected token! 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:717:523: error: Unexpected token! 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:717:523: error: unexpected token in argument list 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:717: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:717:575: error: Unexpected token! 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:717: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:717:614: error: Unexpected token! 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:717: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:717:663: error: Unexpected token! 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:717: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:717:700: error: Unexpected token! 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:717: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:717:710: error: Unexpected token! 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:717:732: error: Unexpected token! 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:717:732: error: unexpected token in argument list 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:717: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:717:754: error: Unexpected token! 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:717: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:717:776: error: Unexpected token! 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:717: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:717:792: error: Unexpected token! 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:717: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:717:808: error: Unexpected token! 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:717: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:717:822: error: Unexpected token! 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:717: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:717:844: error: Unexpected token! 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:717: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:717:861: error: Unexpected token! 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:717: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:717:877: error: Unexpected token! 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:717: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:717: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:717:909: error: Unexpected token! 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:717:935: error: Unexpected token! 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:717:930: error: invalid operand for instruction 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:717: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:717:941: error: Unexpected token! 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:717:975: error: Unexpected token! 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:717:975: error: unexpected token in argument list 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:717:1017: error: Unexpected token! 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:717:1017: error: unexpected token in argument list 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:717: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:717:1059: error: Unexpected token! 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:717: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:717: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:717:1106: error: Unexpected token! 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:717:1130: error: Unexpected token! 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:717:1124: error: unknown use of instruction mnemonic without a size suffix 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:717: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:717:1136: error: Unexpected token! 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:717:1159: error: Unexpected token! 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:717:1154: error: invalid operand for instruction 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:717: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:717:1189: error: Unexpected token! 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:717: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:717:1215: error: Unexpected token! 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:717:1239: error: Unexpected token! 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:717:1233: error: unknown use of instruction mnemonic without a size suffix 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:717: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:717:1248: error: Unexpected token! 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:718: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:718:6: error: Unexpected token! 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:718: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:718:27: error: Unexpected token! 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:718: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:718:59: error: Unexpected token! 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:718: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:718:69: error: Unexpected token! 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:718: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:718:85: error: Unexpected token! 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:718: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:718:113: error: Unexpected token! 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:718:143: error: Unexpected token! 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:718:137: error: invalid operand for instruction 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:718: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:718:149: error: Unexpected token! 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:718: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:718:165: error: Unexpected token! 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:718: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:718:178: error: Unexpected token! 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:718: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:718:198: error: Unexpected token! 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:718:217: error: Unexpected token! 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:718:211: error: invalid operand for instruction 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:718: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:718:223: error: Unexpected token! 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:718: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:718:239: error: Unexpected token! 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:718:257: error: Unexpected token! 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:718:251: error: invalid operand for instruction 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:718: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:718:263: error: Unexpected token! 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:718: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:718:284: error: Unexpected token! 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:718: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:718:320: error: Unexpected token! 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:718:342: error: Unexpected token! 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:718:342: error: unexpected token in argument list 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:718: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:718:366: error: Unexpected token! 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:718: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:718:386: error: Unexpected token! 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:718: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:718:395: error: Unexpected token! 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:718: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:718:411: error: Unexpected token! 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:718: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:718:429: error: Unexpected token! 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:718: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:718:440: error: Unexpected token! 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:718: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:718:455: error: Unexpected token! 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:718: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:718:471: error: Unexpected token! 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:718:523: error: Unexpected token! 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:718:523: error: unexpected token in argument list 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:718: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:718:575: error: Unexpected token! 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:718: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:718:614: error: Unexpected token! 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:718: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:718:663: error: Unexpected token! 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:718: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:718:700: error: Unexpected token! 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:718: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:718:710: error: Unexpected token! 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:718:732: error: Unexpected token! 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:718:732: error: unexpected token in argument list 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:718: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:718:754: error: Unexpected token! 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:718: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:718:776: error: Unexpected token! 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:718: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:718:792: error: Unexpected token! 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:718: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:718:808: error: Unexpected token! 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:718: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:718:822: error: Unexpected token! 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:718: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:718:844: error: Unexpected token! 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:718: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:718:861: error: Unexpected token! 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:718: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:718:877: error: Unexpected token! 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:718: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:718: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:718:909: error: Unexpected token! 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:718:935: error: Unexpected token! 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:718:930: error: invalid operand for instruction 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:718: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:718:941: error: Unexpected token! 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:718:975: error: Unexpected token! 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:718:975: error: unexpected token in argument list 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:718:1017: error: Unexpected token! 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:718:1017: error: unexpected token in argument list 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:718: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:718:1059: error: Unexpected token! 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:718: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:718: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:718:1106: error: Unexpected token! 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:718:1130: error: Unexpected token! 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:718:1124: error: unknown use of instruction mnemonic without a size suffix 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:718: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:718:1136: error: Unexpected token! 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:718:1159: error: Unexpected token! 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:718:1154: error: invalid operand for instruction 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:718: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:718:1189: error: Unexpected token! 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:718: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:718:1215: error: Unexpected token! 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:718:1239: error: Unexpected token! 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:718:1233: error: unknown use of instruction mnemonic without a size suffix 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:718: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:718:1248: error: Unexpected token! 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:719: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:719:6: error: Unexpected token! 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:719: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:719:27: error: Unexpected token! 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:719: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:719:59: error: Unexpected token! 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:719: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:719:69: error: Unexpected token! 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:719: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:719:85: error: Unexpected token! 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:719: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:719:113: error: Unexpected token! 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:719:143: error: Unexpected token! 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:719:137: error: invalid operand for instruction 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:719: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:719:149: error: Unexpected token! 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:719: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:719:165: error: Unexpected token! 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:719: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:719:178: error: Unexpected token! 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:719: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:719:198: error: Unexpected token! 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:719:217: error: Unexpected token! 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:719:211: error: invalid operand for instruction 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:719: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:719:223: error: Unexpected token! 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:719: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:719:239: error: Unexpected token! 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:719:257: error: Unexpected token! 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:719:251: error: invalid operand for instruction 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:719: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:719:263: error: Unexpected token! 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:719: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:719:284: error: Unexpected token! 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:719: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:719:320: error: Unexpected token! 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:719:342: error: Unexpected token! 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:719:342: error: unexpected token in argument list 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:719: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:719:366: error: Unexpected token! 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:719: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:719:386: error: Unexpected token! 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:719: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:719:395: error: Unexpected token! 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:719: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:719:411: error: Unexpected token! 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:719: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:719:429: error: Unexpected token! 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:719: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:719:440: error: Unexpected token! 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:719: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:719:455: error: Unexpected token! 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:719: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:719:471: error: Unexpected token! 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:719:523: error: Unexpected token! 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:719:523: error: unexpected token in argument list 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:719: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:719:575: error: Unexpected token! 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:719: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:719:614: error: Unexpected token! 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:719: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:719:663: error: Unexpected token! 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:719: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:719:700: error: Unexpected token! 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:719: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:719:710: error: Unexpected token! 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:719:732: error: Unexpected token! 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:719:732: error: unexpected token in argument list 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:719: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:719:754: error: Unexpected token! 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:719: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:719:776: error: Unexpected token! 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:719: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:719:792: error: Unexpected token! 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:719: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:719:808: error: Unexpected token! 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:719: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:719:822: error: Unexpected token! 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:719: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:719:844: error: Unexpected token! 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:719: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:719:861: error: Unexpected token! 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:719: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:719:877: error: Unexpected token! 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:719: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:719: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:719:909: error: Unexpected token! 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:719:935: error: Unexpected token! 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:719:930: error: invalid operand for instruction 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:719: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:719:941: error: Unexpected token! 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:719:975: error: Unexpected token! 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:719:975: error: unexpected token in argument list 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:719:1017: error: Unexpected token! 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:719:1017: error: unexpected token in argument list 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:719: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:719:1059: error: Unexpected token! 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:719: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:719: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:719:1106: error: Unexpected token! 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:719:1130: error: Unexpected token! 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:719:1124: error: unknown use of instruction mnemonic without a size suffix 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:719: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:719:1136: error: Unexpected token! 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:719:1159: error: Unexpected token! 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:719:1154: error: invalid operand for instruction 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:719: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:719:1189: error: Unexpected token! 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:719: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:719:1215: error: Unexpected token! 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:719:1239: error: Unexpected token! 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:719:1233: error: unknown use of instruction mnemonic without a size suffix 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:719: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:719:1248: error: Unexpected token! 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:720: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:720:6: error: Unexpected token! 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:720: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:720:27: error: Unexpected token! 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:720: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:720:59: error: Unexpected token! 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:720: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:720:69: error: Unexpected token! 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:720: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:720:85: error: Unexpected token! 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:720: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:720:113: error: Unexpected token! 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:720:143: error: Unexpected token! 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:720:137: error: invalid operand for instruction 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:720: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:720:149: error: Unexpected token! 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:720: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:720:165: error: Unexpected token! 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:720: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:720:178: error: Unexpected token! 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:720: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:720:198: error: Unexpected token! 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:720:217: error: Unexpected token! 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:720:211: error: invalid operand for instruction 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:720: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:720:223: error: Unexpected token! 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:720: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:720:239: error: Unexpected token! 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:720:257: error: Unexpected token! 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:720:251: error: invalid operand for instruction 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:720: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:720:263: error: Unexpected token! 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:720: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:720:284: error: Unexpected token! 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:720: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:720:320: error: Unexpected token! 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:720:342: error: Unexpected token! 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:720:342: error: unexpected token in argument list 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:720: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:720:366: error: Unexpected token! 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:720: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:720:386: error: Unexpected token! 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:720: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:720:395: error: Unexpected token! 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:720: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:720:411: error: Unexpected token! 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:720: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:720:429: error: Unexpected token! 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:720: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:720:440: error: Unexpected token! 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:720: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:720:455: error: Unexpected token! 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:720: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:720:471: error: Unexpected token! 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:720:523: error: Unexpected token! 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:720:523: error: unexpected token in argument list 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:720: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:720:575: error: Unexpected token! 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:720: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:720:614: error: Unexpected token! 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:720: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:720:663: error: Unexpected token! 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:720: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:720:700: error: Unexpected token! 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:720: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:720:710: error: Unexpected token! 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:720:732: error: Unexpected token! 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:720:732: error: unexpected token in argument list 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:720: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:720:754: error: Unexpected token! 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:720: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:720:776: error: Unexpected token! 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:720: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:720:792: error: Unexpected token! 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:720: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:720:808: error: Unexpected token! 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:720: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:720:822: error: Unexpected token! 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:720: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:720:844: error: Unexpected token! 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:720: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:720:861: error: Unexpected token! 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:720: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:720:877: error: Unexpected token! 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:720: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:720: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:720:909: error: Unexpected token! 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:720:935: error: Unexpected token! 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:720:930: error: invalid operand for instruction 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:720: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:720:941: error: Unexpected token! 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:720:975: error: Unexpected token! 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:720:975: error: unexpected token in argument list 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:720:1017: error: Unexpected token! 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:720:1017: error: unexpected token in argument list 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:720: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:720:1059: error: Unexpected token! 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:720: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:720: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:720:1106: error: Unexpected token! 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:720:1130: error: Unexpected token! 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:720:1124: error: unknown use of instruction mnemonic without a size suffix 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:720: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:720:1136: error: Unexpected token! 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:720:1159: error: Unexpected token! 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:720:1154: error: invalid operand for instruction 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:720: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:720:1189: error: Unexpected token! 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:720: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:720:1215: error: Unexpected token! 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:720:1239: error: Unexpected token! 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:720:1233: error: unknown use of instruction mnemonic without a size suffix 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:720: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:720:1248: error: Unexpected token! 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:721: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:721:6: error: Unexpected token! 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:721: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:721:27: error: Unexpected token! 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:721: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:721:59: error: Unexpected token! 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:721: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:721:69: error: Unexpected token! 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:721: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:721:85: error: Unexpected token! 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:721: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:721:113: error: Unexpected token! 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:721:143: error: Unexpected token! 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:721:137: error: invalid operand for instruction 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:721: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:721:149: error: Unexpected token! 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:721: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:721:165: error: Unexpected token! 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:721: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:721:178: error: Unexpected token! 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:721: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:721:198: error: Unexpected token! 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:721:217: error: Unexpected token! 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:721:211: error: invalid operand for instruction 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:721: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:721:223: error: Unexpected token! 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:721: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:721:239: error: Unexpected token! 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:721:257: error: Unexpected token! 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:721:251: error: invalid operand for instruction 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:721: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:721:263: error: Unexpected token! 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:721: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:721:284: error: Unexpected token! 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:721: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:721:320: error: Unexpected token! 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:721:342: error: Unexpected token! 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:721:342: error: unexpected token in argument list 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:721: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:721:366: error: Unexpected token! 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:721: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:721:386: error: Unexpected token! 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:721: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:721:395: error: Unexpected token! 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:721: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:721:411: error: Unexpected token! 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:721: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:721:429: error: Unexpected token! 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:721: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:721:440: error: Unexpected token! 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:721: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:721:455: error: Unexpected token! 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:721: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:721:471: error: Unexpected token! 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:721:523: error: Unexpected token! 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:721:523: error: unexpected token in argument list 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:721: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:721:575: error: Unexpected token! 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:721: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:721:614: error: Unexpected token! 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:721: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:721:663: error: Unexpected token! 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:721: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:721:700: error: Unexpected token! 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:721: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:721:710: error: Unexpected token! 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:721:732: error: Unexpected token! 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:721:732: error: unexpected token in argument list 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:721: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:721:754: error: Unexpected token! 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:721: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:721:776: error: Unexpected token! 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:721: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:721:792: error: Unexpected token! 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:721: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:721:808: error: Unexpected token! 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:721: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:721:822: error: Unexpected token! 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:721: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:721:844: error: Unexpected token! 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:721: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:721:861: error: Unexpected token! 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:721: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:721:877: error: Unexpected token! 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:721: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:721: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:721:909: error: Unexpected token! 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:721:935: error: Unexpected token! 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:721:930: error: invalid operand for instruction 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:721: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:721:941: error: Unexpected token! 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:721:975: error: Unexpected token! 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:721:975: error: unexpected token in argument list 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:721:1017: error: Unexpected token! 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:721:1017: error: unexpected token in argument list 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:721: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:721:1059: error: Unexpected token! 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:721: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:721: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:721:1106: error: Unexpected token! 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:721:1130: error: Unexpected token! 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:721:1124: error: unknown use of instruction mnemonic without a size suffix 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:721: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:721:1136: error: Unexpected token! 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:721:1159: error: Unexpected token! 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:721:1154: error: invalid operand for instruction 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:721: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:721:1189: error: Unexpected token! 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:721: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:721:1215: error: Unexpected token! 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:721:1239: error: Unexpected token! 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:721:1233: error: unknown use of instruction mnemonic without a size suffix 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:721: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:721:1248: error: Unexpected token! 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:722: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:722:6: error: Unexpected token! 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:722: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:722:27: error: Unexpected token! 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:722: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:722:59: error: Unexpected token! 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:722: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:722:69: error: Unexpected token! 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:722: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:722:85: error: Unexpected token! 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:722: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:722:113: error: Unexpected token! 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:722:143: error: Unexpected token! 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:722:137: error: invalid operand for instruction 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:722: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:722:149: error: Unexpected token! 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:722: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:722:165: error: Unexpected token! 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:722: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:722:178: error: Unexpected token! 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:722: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:722:198: error: Unexpected token! 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:722:217: error: Unexpected token! 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:722:211: error: invalid operand for instruction 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:722: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:722:223: error: Unexpected token! 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:722: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:722:239: error: Unexpected token! 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:722:257: error: Unexpected token! 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:722:251: error: invalid operand for instruction 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:722: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:722:263: error: Unexpected token! 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:722: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:722:284: error: Unexpected token! 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:722: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:722:320: error: Unexpected token! 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:722:342: error: Unexpected token! 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:722:342: error: unexpected token in argument list 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:722: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:722:366: error: Unexpected token! 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:722: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:722:386: error: Unexpected token! 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:722: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:722:395: error: Unexpected token! 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:722: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:722:411: error: Unexpected token! 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:722: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:722:429: error: Unexpected token! 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:722: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:722:440: error: Unexpected token! 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:722: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:722:455: error: Unexpected token! 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:722: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:722:471: error: Unexpected token! 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:722:523: error: Unexpected token! 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:722:523: error: unexpected token in argument list 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:722: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:722:575: error: Unexpected token! 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:722: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:722:614: error: Unexpected token! 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:722: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:722:663: error: Unexpected token! 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:722: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:722:700: error: Unexpected token! 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:722: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:722:710: error: Unexpected token! 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:722:732: error: Unexpected token! 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:722:732: error: unexpected token in argument list 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:722: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:722:754: error: Unexpected token! 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:722: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:722:776: error: Unexpected token! 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:722: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:722:792: error: Unexpected token! 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:722: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:722:808: error: Unexpected token! 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:722: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:722:822: error: Unexpected token! 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:722: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:722:844: error: Unexpected token! 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:722: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:722:861: error: Unexpected token! 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:722: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:722:877: error: Unexpected token! 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:722: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:722: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:722:909: error: Unexpected token! 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:722:935: error: Unexpected token! 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:722:930: error: invalid operand for instruction 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:722: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:722:941: error: Unexpected token! 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:722:975: error: Unexpected token! 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:722:975: error: unexpected token in argument list 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:722:1017: error: Unexpected token! 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:722:1017: error: unexpected token in argument list 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:722: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:722:1059: error: Unexpected token! 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:722: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:722: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:722:1106: error: Unexpected token! 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:722:1130: error: Unexpected token! 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:722:1124: error: unknown use of instruction mnemonic without a size suffix 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:722: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:722:1136: error: Unexpected token! 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:722:1159: error: Unexpected token! 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:722:1154: error: invalid operand for instruction 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:722: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:722:1189: error: Unexpected token! 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:722: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:722:1215: error: Unexpected token! 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:722:1239: error: Unexpected token! 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:722:1233: error: unknown use of instruction mnemonic without a size suffix 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:722: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:722:1248: error: Unexpected token! 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:727:6: error: unknown token in expression pop %rax ^ jitc_mmu.S:727:6: error: Unexpected token! pop %rax ^ jitc_mmu.S:728:6: error: unknown token in expression pop %rdx # return address is no longer needed ^ jitc_mmu.S:728:6: error: Unexpected token! pop %rdx # return address is no longer needed ^ jitc_mmu.S:729:6: error: unknown token in expression pop %rbx # bytes to roll back ^ jitc_mmu.S:729:6: error: Unexpected token! pop %rbx # bytes to roll back ^ jitc_mmu.S:730:6: error: unknown token in expression add %rsp, %rbx ^ jitc_mmu.S:730:6: error: Unexpected token! add %rsp, %rbx ^ jitc_mmu.S:732:6: error: unknown token in expression mov %ecx, (1<<30)|(1<<25) # PPC_EXC_DSISR_PAGE | PPC_EXC_DSISR_STORE ^ jitc_mmu.S:732:6: error: Unexpected token! 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)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:746:2: note: while in macro instantiation mmu_prologue ^ :1:5: error: Unexpected token! lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:746:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: Unexpected token! mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:746:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: unexpected token in argument list mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:746:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:748:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:748:7: error: Unexpected token! push %rdx ^ jitc_mmu.S:751:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:751:6: error: Unexpected token! pop %rdx ^ jitc_mmu.S:752:7: error: Unexpected token! jc 1f ^ jitc_mmu.S:752:2: error: invalid operand for instruction jc 1f ^ jitc_mmu.S:753:7: error: Unexpected token! mov [%rax], %dl ^ jitc_mmu.S:753:7: error: unexpected token in argument list mov [%rax], %dl ^ jitc_mmu.S:756:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:756:6: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:757:8: error: unknown token in expression movzx %esi, %dl ^ jitc_mmu.S:757:8: error: Unexpected token! movzx %esi, %dl ^ jitc_mmu.S:758:6: error: unknown token in expression mov %edx, 1 ^ jitc_mmu.S:758:6: error: Unexpected token! mov %edx, 1 ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:772:2: note: while in macro instantiation mmu_prologue ^ :1:5: error: Unexpected token! lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:772:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: Unexpected token! mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:772:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: unexpected token in argument list mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:772:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:773:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:773:6: error: Unexpected token! mov %ebx, %eax ^ jitc_mmu.S:774:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:774:6: error: Unexpected token! and %ebx, 0xfff ^ jitc_mmu.S:775:6: error: unknown token in expression cmp %ebx, 4095 ^ jitc_mmu.S:775:6: error: Unexpected token! cmp %ebx, 4095 ^ jitc_mmu.S:776:8: error: Unexpected token! jae 1f ^ jitc_mmu.S:776:2: error: invalid operand for instruction jae 1f ^ jitc_mmu.S:778:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:778:7: error: Unexpected token! push %rdx ^ jitc_mmu.S:781:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:781:6: error: Unexpected token! pop %rdx ^ jitc_mmu.S:782:7: error: Unexpected token! jc 2f ^ jitc_mmu.S:782:2: error: invalid operand for instruction jc 2f ^ jitc_mmu.S:783:7: error: Unexpected token! mov [%rax], %dh ^ jitc_mmu.S:783:7: error: unexpected token in argument list mov [%rax], %dh ^ jitc_mmu.S:784:7: error: Unexpected token! mov [%rax+1], %dl ^ jitc_mmu.S:784:7: error: unexpected token in argument list mov [%rax+1], %dl ^ jitc_mmu.S:787:6: error: unknown token in expression rol %dx, 8 ^ jitc_mmu.S:787:6: error: Unexpected token! rol %dx, 8 ^ jitc_mmu.S:788:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:788:6: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:789:8: error: unknown token in expression movzx %esi, %dx ^ jitc_mmu.S:789:8: error: Unexpected token! movzx %esi, %dx ^ jitc_mmu.S:790:6: error: unknown token in expression mov %edx, 2 ^ jitc_mmu.S:790:6: error: Unexpected token! mov %edx, 2 ^ jitc_mmu.S:794:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:794:7: error: Unexpected token! push %rdx ^ jitc_mmu.S:795:7: error: unknown token in expression push %rax ^ jitc_mmu.S:795:7: error: Unexpected token! push %rax ^ jitc_mmu.S:798:6: error: unknown token in expression mov %edx, [%rsp+8] ^ jitc_mmu.S:798:6: error: Unexpected token! mov %edx, [%rsp+8] ^ jitc_mmu.S:799:7: error: Unexpected token! jc 1f ^ jitc_mmu.S:799:2: error: invalid operand for instruction jc 1f ^ jitc_mmu.S:800:7: error: Unexpected token! mov [%rax], %dh ^ jitc_mmu.S:800:7: error: unexpected token in argument list mov [%rax], %dh ^ jitc_mmu.S:802:6: error: unknown token in expression pop %rax ^ jitc_mmu.S:802:6: error: Unexpected token! pop %rax ^ jitc_mmu.S:803:6: error: unknown token in expression inc %eax ^ jitc_mmu.S:803:6: error: Unexpected token! inc %eax ^ jitc_mmu.S:806:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:806:6: error: Unexpected token! pop %rdx ^ jitc_mmu.S:807:7: error: Unexpected token! jc 2f ^ jitc_mmu.S:807:2: error: invalid operand for instruction jc 2f ^ jitc_mmu.S:808:7: error: Unexpected token! mov [%rax], %dl ^ jitc_mmu.S:808:7: error: unexpected token in argument list mov [%rax], %dl ^ jitc_mmu.S:812:8: error: unknown token in expression movzx %esi, %dh ^ jitc_mmu.S:812:8: error: Unexpected token! movzx %esi, %dh ^ jitc_mmu.S:813:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:813:6: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:814:6: error: unknown token in expression mov %edx, 1 ^ jitc_mmu.S:814:6: error: Unexpected token! mov %edx, 1 ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ jitc_mmu.S:816:2: note: while in macro instantiation getCurCPU 1 ^ :1:5: error: Unexpected token! lea %rdi, [%rsp+(8+8*1)] ^ jitc_mmu.S:816:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:817:8: error: Unexpected token! jmp 3b ^ jitc_mmu.S:817:2: error: unknown use of instruction mnemonic without a size suffix jmp 3b ^ jitc_mmu.S:819:8: error: unknown token in expression movzx %esi, %dl ^ jitc_mmu.S:819:8: error: Unexpected token! movzx %esi, %dl ^ jitc_mmu.S:820:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:820:6: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:821:6: error: unknown token in expression mov %edx, 1 ^ jitc_mmu.S:821:6: error: Unexpected token! mov %edx, 1 ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:835:2: note: while in macro instantiation mmu_prologue ^ :1:5: error: Unexpected token! lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:835:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: Unexpected token! mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:835:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: unexpected token in argument list mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:835:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:836:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:836:6: error: Unexpected token! mov %ebx, %eax ^ jitc_mmu.S:837:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:837:6: error: Unexpected token! and %ebx, 0xfff ^ jitc_mmu.S:838:6: error: unknown token in expression cmp %ebx, 4093 ^ jitc_mmu.S:838:6: error: Unexpected token! cmp %ebx, 4093 ^ jitc_mmu.S:839:8: error: Unexpected token! jae 1f ^ jitc_mmu.S:839:2: error: invalid operand for instruction jae 1f ^ jitc_mmu.S:841:8: error: unknown token in expression bswap %edx ^ jitc_mmu.S:841:8: error: Unexpected token! bswap %edx ^ jitc_mmu.S:843:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:843:7: error: Unexpected token! push %rdx ^ jitc_mmu.S:846:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:846:6: error: Unexpected token! pop %rdx ^ jitc_mmu.S:847:7: error: Unexpected token! jc 2f ^ jitc_mmu.S:847:2: error: invalid operand for instruction jc 2f ^ jitc_mmu.S:848:7: error: Unexpected token! mov [%rax], %edx ^ jitc_mmu.S:848:7: error: unexpected token in argument list mov [%rax], %edx ^ jitc_mmu.S:852:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:852:6: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:853:6: error: unknown token in expression mov %esi, %edx ^ jitc_mmu.S:853:6: error: Unexpected token! mov %esi, %edx ^ jitc_mmu.S:854:6: error: unknown token in expression mov %edx, 4 ^ jitc_mmu.S:854:6: error: Unexpected token! mov %edx, 4 ^ jitc_mmu.S:858:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:858:7: error: Unexpected token! push %rdx ^ jitc_mmu.S:859:7: error: unknown token in expression push %rax ^ jitc_mmu.S:859:7: error: Unexpected token! push %rax ^ jitc_mmu.S:862:6: error: unknown token in expression mov %edx, [%rsp+8] ^ jitc_mmu.S:862:6: error: Unexpected token! mov %edx, [%rsp+8] ^ jitc_mmu.S:863:6: error: unknown token in expression mov %ebx, [%rsp] ^ jitc_mmu.S:863:6: error: Unexpected token! mov %ebx, [%rsp] ^ jitc_mmu.S:864:6: error: unknown token in expression mov %ecx, 4096 ^ jitc_mmu.S:864:6: error: Unexpected token! mov %ecx, 4096 ^ jitc_mmu.S:865:7: error: Unexpected token! jc 2f ^ jitc_mmu.S:865:2: error: invalid operand for instruction jc 2f ^ jitc_mmu.S:866:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:866:6: error: Unexpected token! and %ebx, 0xfff ^ jitc_mmu.S:867:6: error: unknown token in expression sub %ecx, %ebx ^ jitc_mmu.S:867:6: error: Unexpected token! sub %ecx, %ebx ^ jitc_mmu.S:869:7: error: unknown token in expression rol %edx, 8 ^ jitc_mmu.S:869:7: error: Unexpected token! rol %edx, 8 ^ jitc_mmu.S:870:8: error: Unexpected token! mov [%rax], %dl ^ jitc_mmu.S:870:8: error: unexpected token in argument list mov [%rax], %dl ^ jitc_mmu.S:871:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:871:7: error: Unexpected token! inc %rax ^ jitc_mmu.S:872:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:872:7: error: Unexpected token! dec %ecx ^ jitc_mmu.S:873:8: error: Unexpected token! jnz 1b ^ jitc_mmu.S:873:2: error: invalid operand for instruction jnz 1b ^ jitc_mmu.S:875:7: error: Unexpected token! mov [%rsp+8], %edx ^ jitc_mmu.S:875:7: error: unexpected token in argument list mov [%rsp+8], %edx ^ jitc_mmu.S:876:6: error: unknown token in expression mov %eax, [%rsp] ^ jitc_mmu.S:876:6: error: Unexpected token! mov %eax, [%rsp] ^ jitc_mmu.S:877:6: error: unknown token in expression add %eax, 4 ^ jitc_mmu.S:877:6: error: Unexpected token! add %eax, 4 ^ jitc_mmu.S:880:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:880:6: error: Unexpected token! pop %rbx ^ jitc_mmu.S:881:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:881:6: error: Unexpected token! pop %rdx ^ jitc_mmu.S:882:7: error: Unexpected token! jc 3f ^ jitc_mmu.S:882:2: error: invalid operand for instruction jc 3f ^ jitc_mmu.S:883:6: error: unknown token in expression add %ebx, 4 ^ jitc_mmu.S:883:6: error: Unexpected token! add %ebx, 4 ^ jitc_mmu.S:884:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:884:6: error: Unexpected token! and %ebx, 0xfff ^ jitc_mmu.S:885:6: error: unknown token in expression sub %rax, %rbx ^ jitc_mmu.S:885:6: error: Unexpected token! sub %rax, %rbx ^ jitc_mmu.S:887:7: error: unknown token in expression rol %edx, 8 ^ jitc_mmu.S:887:7: error: Unexpected token! rol %edx, 8 ^ jitc_mmu.S:888:8: error: Unexpected token! mov [%rax], %dl ^ jitc_mmu.S:888:8: error: unexpected token in argument list mov [%rax], %dl ^ jitc_mmu.S:889:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:889:7: error: Unexpected token! inc %rax ^ jitc_mmu.S:890:7: error: unknown token in expression dec %ebx ^ jitc_mmu.S:890:7: error: Unexpected token! dec %ebx ^ jitc_mmu.S:891:8: error: Unexpected token! jnz 1b ^ jitc_mmu.S:891:2: error: invalid operand for instruction jnz 1b ^ jitc_mmu.S:895:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:895:6: error: Unexpected token! and %ebx, 0xfff ^ jitc_mmu.S:896:6: error: unknown token in expression sub %ecx, %ebx ^ jitc_mmu.S:896:6: error: Unexpected token! sub %ecx, %ebx ^ jitc_mmu.S:898:7: error: unknown token in expression rol %edx, 8 ^ jitc_mmu.S:898:7: error: Unexpected token! rol %edx, 8 ^ jitc_mmu.S:899:8: error: unknown token in expression push %rax ^ jitc_mmu.S:899:8: error: Unexpected token! push %rax ^ jitc_mmu.S:900:8: error: unknown token in expression push %rcx ^ jitc_mmu.S:900:8: error: Unexpected token! push %rcx ^ jitc_mmu.S:901:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:901:8: error: Unexpected token! push %rdx ^ jitc_mmu.S:902:9: error: unknown token in expression movzx %esi, %dl ^ jitc_mmu.S:902:9: error: Unexpected token! movzx %esi, %dl ^ jitc_mmu.S:903:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:903:7: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:904:7: error: unknown token in expression mov %edx, 1 ^ jitc_mmu.S:904:7: error: Unexpected token! mov %edx, 1 ^ jitc_mmu.S:906:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:906:7: error: Unexpected token! pop %rdx ^ jitc_mmu.S:907:7: error: unknown token in expression pop %rcx ^ jitc_mmu.S:907:7: error: Unexpected token! pop %rcx ^ jitc_mmu.S:908:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:908:7: error: Unexpected token! pop %rax ^ jitc_mmu.S:909:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:909:7: error: Unexpected token! inc %eax ^ jitc_mmu.S:910:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:910:7: error: Unexpected token! dec %ecx ^ jitc_mmu.S:911:8: error: Unexpected token! jnz 1b ^ jitc_mmu.S:911:2: error: invalid operand for instruction jnz 1b ^ jitc_mmu.S:912:8: error: Unexpected token! jmp 4b ^ jitc_mmu.S:912:2: error: unknown use of instruction mnemonic without a size suffix jmp 4b ^ jitc_mmu.S:914:6: error: unknown token in expression add %ebx, 4 ^ jitc_mmu.S:914:6: error: Unexpected token! add %ebx, 4 ^ jitc_mmu.S:915:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:915:6: error: Unexpected token! and %ebx, 0xfff ^ jitc_mmu.S:916:6: error: unknown token in expression sub %eax, %ebx ^ jitc_mmu.S:916:6: error: Unexpected token! sub %eax, %ebx ^ jitc_mmu.S:918:7: error: unknown token in expression rol %edx, 8 ^ jitc_mmu.S:918:7: error: Unexpected token! rol %edx, 8 ^ jitc_mmu.S:919:8: error: unknown token in expression push %rax ^ jitc_mmu.S:919:8: error: Unexpected token! push %rax ^ jitc_mmu.S:920:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:920:8: error: Unexpected token! push %rdx ^ jitc_mmu.S:921:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:921:7: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:922:9: error: unknown token in expression movzx %esi, %dl ^ jitc_mmu.S:922:9: error: Unexpected token! movzx %esi, %dl ^ jitc_mmu.S:923:7: error: unknown token in expression mov %edx, 1 ^ jitc_mmu.S:923:7: error: Unexpected token! mov %edx, 1 ^ jitc_mmu.S:925:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:925:7: error: Unexpected token! pop %rdx ^ jitc_mmu.S:926:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:926:7: error: Unexpected token! pop %rax ^ jitc_mmu.S:927:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:927:7: error: Unexpected token! inc %rax ^ jitc_mmu.S:928:7: error: unknown token in expression dec %rbx ^ jitc_mmu.S:928:7: error: Unexpected token! dec %rbx ^ jitc_mmu.S:929:8: error: Unexpected token! jnz 1b ^ jitc_mmu.S:929:2: error: invalid operand for instruction jnz 1b ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:942:2: note: while in macro instantiation mmu_prologue ^ :1:5: error: Unexpected token! lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:942:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: Unexpected token! mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:942:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: unexpected token in argument list mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:942:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:943:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:943:6: error: Unexpected token! mov %ebx, %eax ^ jitc_mmu.S:944:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:944:6: error: Unexpected token! and %ebx, 0xfff ^ jitc_mmu.S:945:6: error: unknown token in expression cmp %ebx, 4089 ^ jitc_mmu.S:945:6: error: Unexpected token! cmp %ebx, 4089 ^ jitc_mmu.S:947:1: error: Unexpected token! ^ jitc_mmu.S:946:2: error: invalid operand for instruction jae 1f # overlap ^ jitc_mmu.S:948:8: error: unknown token in expression bswap %rdx ^ jitc_mmu.S:948:8: error: Unexpected token! bswap %rdx ^ jitc_mmu.S:950:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:950:7: error: Unexpected token! push %rdx ^ jitc_mmu.S:953:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:953:6: error: Unexpected token! pop %rdx ^ jitc_mmu.S:954:7: error: Unexpected token! jc 2f ^ jitc_mmu.S:954:2: error: invalid operand for instruction jc 2f ^ jitc_mmu.S:955:7: error: Unexpected token! mov [%rax], %rdx ^ jitc_mmu.S:955:7: error: unexpected token in argument list mov [%rax], %rdx ^ jitc_mmu.S:958:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:958:6: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:959:6: error: unknown token in expression mov %rsi, %rdx ^ jitc_mmu.S:959:6: error: Unexpected token! mov %rsi, %rdx ^ jitc_mmu.S:963:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:963:7: error: Unexpected token! push %rdx ^ jitc_mmu.S:964:7: error: unknown token in expression push %rax ^ jitc_mmu.S:964:7: error: Unexpected token! push %rax ^ jitc_mmu.S:967:6: error: unknown token in expression mov %rdx, [%rsp+8] ^ jitc_mmu.S:967:6: error: Unexpected token! mov %rdx, [%rsp+8] ^ jitc_mmu.S:968:6: error: unknown token in expression mov %ebx, [%rsp] ^ jitc_mmu.S:968:6: error: Unexpected token! mov %ebx, [%rsp] ^ jitc_mmu.S:969:6: error: unknown token in expression mov %ecx, 4096 ^ jitc_mmu.S:969:6: error: Unexpected token! mov %ecx, 4096 ^ jitc_mmu.S:970:7: error: Unexpected token! jc 2f ^ jitc_mmu.S:970:2: error: invalid operand for instruction jc 2f ^ jitc_mmu.S:971:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:971:6: error: Unexpected token! and %ebx, 0xfff ^ jitc_mmu.S:972:6: error: unknown token in expression sub %ecx, %ebx ^ jitc_mmu.S:972:6: error: Unexpected token! sub %ecx, %ebx ^ jitc_mmu.S:974:7: error: unknown token in expression rol %rdx, 8 ^ jitc_mmu.S:974:7: error: Unexpected token! rol %rdx, 8 ^ jitc_mmu.S:975:8: error: Unexpected token! mov [%rax], %dl ^ jitc_mmu.S:975:8: error: unexpected token in argument list mov [%rax], %dl ^ jitc_mmu.S:976:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:976:7: error: Unexpected token! inc %rax ^ jitc_mmu.S:977:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:977:7: error: Unexpected token! dec %ecx ^ jitc_mmu.S:978:8: error: Unexpected token! jnz 1b ^ jitc_mmu.S:978:2: error: invalid operand for instruction jnz 1b ^ jitc_mmu.S:980:7: error: Unexpected token! mov [%rsp+8], %rdx ^ jitc_mmu.S:980:7: error: unexpected token in argument list mov [%rsp+8], %rdx ^ jitc_mmu.S:981:6: error: unknown token in expression mov %eax, [%rsp] ^ jitc_mmu.S:981:6: error: Unexpected token! mov %eax, [%rsp] ^ jitc_mmu.S:982:6: error: unknown token in expression add %eax, 8 ^ jitc_mmu.S:982:6: error: Unexpected token! add %eax, 8 ^ jitc_mmu.S:985:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:985:6: error: Unexpected token! pop %rbx ^ jitc_mmu.S:986:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:986:6: error: Unexpected token! pop %rdx ^ jitc_mmu.S:987:7: error: Unexpected token! jc 3f ^ jitc_mmu.S:987:2: error: invalid operand for instruction jc 3f ^ jitc_mmu.S:988:6: error: unknown token in expression add %ebx, 8 ^ jitc_mmu.S:988:6: error: Unexpected token! add %ebx, 8 ^ jitc_mmu.S:989:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:989:6: error: Unexpected token! and %ebx, 0xfff ^ jitc_mmu.S:990:6: error: unknown token in expression sub %rax, %rbx ^ jitc_mmu.S:990:6: error: Unexpected token! sub %rax, %rbx ^ jitc_mmu.S:992:7: error: unknown token in expression rol %rdx, 8 ^ jitc_mmu.S:992:7: error: Unexpected token! rol %rdx, 8 ^ jitc_mmu.S:993:8: error: Unexpected token! mov [%rax], %dl ^ jitc_mmu.S:993:8: error: unexpected token in argument list mov [%rax], %dl ^ jitc_mmu.S:994:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:994:7: error: Unexpected token! inc %rax ^ jitc_mmu.S:995:7: error: unknown token in expression dec %ebx ^ jitc_mmu.S:995:7: error: Unexpected token! dec %ebx ^ jitc_mmu.S:996:8: error: Unexpected token! jnz 1b ^ jitc_mmu.S:996:2: error: invalid operand for instruction jnz 1b ^ jitc_mmu.S:1000:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:1000:6: error: Unexpected token! and %ebx, 0xfff ^ jitc_mmu.S:1001:6: error: unknown token in expression sub %ecx, %ebx ^ jitc_mmu.S:1001:6: error: Unexpected token! sub %ecx, %ebx ^ jitc_mmu.S:1003:7: error: unknown token in expression rol %rdx, 8 ^ jitc_mmu.S:1003:7: error: Unexpected token! rol %rdx, 8 ^ jitc_mmu.S:1004:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1004:8: error: Unexpected token! push %rax ^ jitc_mmu.S:1005:8: error: unknown token in expression push %rcx ^ jitc_mmu.S:1005:8: error: Unexpected token! push %rcx ^ jitc_mmu.S:1006:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1006:8: error: Unexpected token! push %rdx ^ jitc_mmu.S:1007:9: error: unknown token in expression movzx %esi, %dl ^ jitc_mmu.S:1007:9: error: Unexpected token! movzx %esi, %dl ^ jitc_mmu.S:1008:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1008:7: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:1009:7: error: unknown token in expression mov %edx, 1 ^ jitc_mmu.S:1009:7: error: Unexpected token! mov %edx, 1 ^ jitc_mmu.S:1011:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1011:7: error: Unexpected token! pop %rdx ^ jitc_mmu.S:1012:7: error: unknown token in expression pop %rcx ^ jitc_mmu.S:1012:7: error: Unexpected token! pop %rcx ^ jitc_mmu.S:1013:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1013:7: error: Unexpected token! pop %rax ^ jitc_mmu.S:1014:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:1014:7: error: Unexpected token! inc %eax ^ jitc_mmu.S:1015:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:1015:7: error: Unexpected token! dec %ecx ^ jitc_mmu.S:1016:8: error: Unexpected token! jnz 1b ^ jitc_mmu.S:1016:2: error: invalid operand for instruction jnz 1b ^ jitc_mmu.S:1017:8: error: Unexpected token! jmp 4b ^ jitc_mmu.S:1017:2: error: unknown use of instruction mnemonic without a size suffix jmp 4b ^ jitc_mmu.S:1019:6: error: unknown token in expression add %ebx, 4 ^ jitc_mmu.S:1019:6: error: Unexpected token! add %ebx, 4 ^ jitc_mmu.S:1020:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:1020:6: error: Unexpected token! and %ebx, 0xfff ^ jitc_mmu.S:1021:6: error: unknown token in expression sub %eax, %ebx ^ jitc_mmu.S:1021:6: error: Unexpected token! sub %eax, %ebx ^ jitc_mmu.S:1023:7: error: unknown token in expression rol %rdx, 8 ^ jitc_mmu.S:1023:7: error: Unexpected token! rol %rdx, 8 ^ jitc_mmu.S:1024:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1024:8: error: Unexpected token! push %rax ^ jitc_mmu.S:1025:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1025:8: error: Unexpected token! push %rdx ^ jitc_mmu.S:1026:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1026:7: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:1027:9: error: unknown token in expression movzx %esi, %dl ^ jitc_mmu.S:1027:9: error: Unexpected token! movzx %esi, %dl ^ jitc_mmu.S:1028:7: error: unknown token in expression mov %edx, 1 ^ jitc_mmu.S:1028:7: error: Unexpected token! mov %edx, 1 ^ jitc_mmu.S:1030:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1030:7: error: Unexpected token! pop %rdx ^ jitc_mmu.S:1031:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1031:7: error: Unexpected token! pop %rax ^ jitc_mmu.S:1032:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:1032:7: error: Unexpected token! inc %rax ^ jitc_mmu.S:1033:7: error: unknown token in expression dec %rbx ^ jitc_mmu.S:1033:7: error: Unexpected token! dec %rbx ^ jitc_mmu.S:1034:8: error: Unexpected token! jnz 1b ^ jitc_mmu.S:1034:2: error: invalid operand for instruction jnz 1b ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1048:2: note: while in macro instantiation mmu_prologue ^ :1:5: error: Unexpected token! lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1048:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: Unexpected token! mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1048:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: unexpected token in argument list mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1048:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1049:6: error: unknown token in expression and %eax, 0xfffffff0 ^ jitc_mmu.S:1049:6: error: Unexpected token! and %eax, 0xfffffff0 ^ jitc_mmu.S:1050:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1050:7: error: Unexpected token! push %rdx ^ jitc_mmu.S:1054:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1054:6: error: Unexpected token! pop %rdx ^ jitc_mmu.S:1055:7: error: Unexpected token! jc 1f ^ jitc_mmu.S:1055:2: error: invalid operand for instruction jc 1f ^ jitc_mmu.S:1057:6: error: unknown token in expression mov %rbx, [%rdx] ^ jitc_mmu.S:1057:6: error: Unexpected token! mov %rbx, [%rdx] ^ jitc_mmu.S:1058:6: error: unknown token in expression mov %rsi, [%rdx+8] ^ jitc_mmu.S:1058:6: error: Unexpected token! mov %rsi, [%rdx+8] ^ jitc_mmu.S:1060:8: error: unknown token in expression bswap %rbx ^ jitc_mmu.S:1060:8: error: Unexpected token! bswap %rbx ^ jitc_mmu.S:1061:8: error: unknown token in expression bswap %rsi ^ jitc_mmu.S:1061:8: error: Unexpected token! bswap %rsi ^ jitc_mmu.S:1063:7: error: Unexpected token! mov [%rax+8], %rbx ^ jitc_mmu.S:1063:7: error: unexpected token in argument list mov [%rax+8], %rbx ^ jitc_mmu.S:1064:7: error: Unexpected token! mov [%rax], %rsi ^ jitc_mmu.S:1064:7: error: unexpected token in argument list mov [%rax], %rsi ^ jitc_mmu.S:1067:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1067:6: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:1068:6: error: unknown token in expression mov %rsi, %rdx ^ jitc_mmu.S:1068:6: error: Unexpected token! mov %rsi, %rdx ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1072:2: note: while in macro instantiation mmu_prologue ^ :1:5: error: Unexpected token! lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1072:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: Unexpected token! mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1072:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: unexpected token in argument list mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1072:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1073:6: error: unknown token in expression and %eax, 0xfffffff0 ^ jitc_mmu.S:1073:6: error: Unexpected token! and %eax, 0xfffffff0 ^ jitc_mmu.S:1074:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1074:7: error: Unexpected token! push %rdx ^ jitc_mmu.S:1078:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1078:6: error: Unexpected token! pop %rdx ^ jitc_mmu.S:1079:7: error: Unexpected token! jc 1f ^ jitc_mmu.S:1079:2: error: invalid operand for instruction jc 1f ^ jitc_mmu.S:1081:10: error: Unexpected token! movaps [%rax], %xmm0 ^ jitc_mmu.S:1081:10: error: unexpected token in argument list movaps [%rax], %xmm0 ^ jitc_mmu.S:1084:10: error: Unexpected token! movaps [%rdx], %xmm0 ^ jitc_mmu.S:1084:10: error: unexpected token in argument list movaps [%rdx], %xmm0 ^ jitc_mmu.S:1085:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1085:6: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:1086:6: error: unknown token in expression mov %rsi, %rdx ^ jitc_mmu.S:1086:6: error: Unexpected token! mov %rsi, %rdx ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1101:2: note: while in macro instantiation mmu_prologue ^ :1:5: error: Unexpected token! lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1101:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: Unexpected token! mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1101:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: unexpected token in argument list mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1101:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1105:7: error: Unexpected token! jc 1f ^ jitc_mmu.S:1105:2: error: invalid operand for instruction jc 1f ^ jitc_mmu.S:1106:8: error: unknown token in expression movzx %edx, byte ptr [%rax] ^ jitc_mmu.S:1106:8: error: Unexpected token! movzx %edx, byte ptr [%rax] ^ jitc_mmu.S:1109:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1109:6: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:1110:6: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1110:6: error: Unexpected token! mov %esi, 1 ^ jitc_mmu.S:1112:8: error: unknown token in expression movzx %edx, %al ^ jitc_mmu.S:1112:8: error: Unexpected token! movzx %edx, %al ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1127:2: note: while in macro instantiation mmu_prologue ^ :1:5: error: Unexpected token! lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1127:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: Unexpected token! mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1127:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: unexpected token in argument list mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1127:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1128:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:1128:6: error: Unexpected token! mov %ebx, %eax ^ jitc_mmu.S:1129:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:1129:6: error: Unexpected token! and %ebx, 0xfff ^ jitc_mmu.S:1130:6: error: unknown token in expression cmp %ebx, 4095 ^ jitc_mmu.S:1130:6: error: Unexpected token! cmp %ebx, 4095 ^ jitc_mmu.S:1131:8: error: Unexpected token! jae 1f ^ jitc_mmu.S:1131:2: error: invalid operand for instruction jae 1f ^ jitc_mmu.S:1135:7: error: Unexpected token! jc 2f ^ jitc_mmu.S:1135:2: error: invalid operand for instruction jc 2f ^ jitc_mmu.S:1136:8: error: unknown token in expression movzx %edx, word ptr [%rax] ^ jitc_mmu.S:1136:8: error: Unexpected token! movzx %edx, word ptr [%rax] ^ jitc_mmu.S:1137:6: error: unknown token in expression rol %dx, 8 ^ jitc_mmu.S:1137:6: error: Unexpected token! rol %dx, 8 ^ jitc_mmu.S:1140:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1140:6: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:1141:6: error: unknown token in expression mov %esi, 2 ^ jitc_mmu.S:1141:6: error: Unexpected token! mov %esi, 2 ^ jitc_mmu.S:1143:6: error: unknown token in expression rol %ax, 8 ^ jitc_mmu.S:1143:6: error: Unexpected token! rol %ax, 8 ^ jitc_mmu.S:1144:8: error: unknown token in expression movzx %edx, %ax ^ jitc_mmu.S:1144:8: error: Unexpected token! movzx %edx, %ax ^ jitc_mmu.S:1148:7: error: unknown token in expression push %rax ^ jitc_mmu.S:1148:7: error: Unexpected token! push %rax ^ jitc_mmu.S:1151:7: error: Unexpected token! jc 2f ^ jitc_mmu.S:1151:2: error: invalid operand for instruction jc 2f ^ jitc_mmu.S:1152:6: error: unknown token in expression xor %edx, %edx ^ jitc_mmu.S:1152:6: error: Unexpected token! xor %edx, %edx ^ jitc_mmu.S:1153:6: error: unknown token in expression mov %dh, [%rax] ^ jitc_mmu.S:1153:6: error: Unexpected token! mov %dh, [%rax] ^ jitc_mmu.S:1155:6: error: unknown token in expression mov %eax, [%rsp] ^ jitc_mmu.S:1155:6: error: Unexpected token! mov %eax, [%rsp] ^ jitc_mmu.S:1156:7: error: Unexpected token! mov [%rsp], %edx ^ jitc_mmu.S:1156:7: error: unexpected token in argument list mov [%rsp], %edx ^ jitc_mmu.S:1157:6: error: unknown token in expression inc %eax ^ jitc_mmu.S:1157:6: error: Unexpected token! inc %eax ^ jitc_mmu.S:1160:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1160:6: error: Unexpected token! pop %rdx ^ jitc_mmu.S:1161:7: error: Unexpected token! jc 3f ^ jitc_mmu.S:1161:2: error: invalid operand for instruction jc 3f ^ jitc_mmu.S:1162:6: error: unknown token in expression mov %dl, [%rax] ^ jitc_mmu.S:1162:6: error: Unexpected token! mov %dl, [%rax] ^ jitc_mmu.S:1166:7: error: unknown token in expression push %rdi ^ jitc_mmu.S:1166:7: error: Unexpected token! push %rdi ^ jitc_mmu.S:1167:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1167:6: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:1168:6: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1168:6: error: Unexpected token! mov %esi, 1 ^ jitc_mmu.S:1170:6: error: unknown token in expression xor %edx, %edx ^ jitc_mmu.S:1170:6: error: Unexpected token! xor %edx, %edx ^ jitc_mmu.S:1171:6: error: unknown token in expression mov %dh, %al ^ jitc_mmu.S:1171:6: error: Unexpected token! mov %dh, %al ^ jitc_mmu.S:1172:6: error: unknown token in expression pop %rdi ^ jitc_mmu.S:1172:6: error: Unexpected token! pop %rdi ^ jitc_mmu.S:1173:8: error: Unexpected token! jmp 1b ^ jitc_mmu.S:1173:2: error: unknown use of instruction mnemonic without a size suffix jmp 1b ^ jitc_mmu.S:1175:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1175:7: error: Unexpected token! push %rdx ^ jitc_mmu.S:1176:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1176:6: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:1177:6: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1177:6: error: Unexpected token! mov %esi, 1 ^ jitc_mmu.S:1179:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1179:6: error: Unexpected token! pop %rdx ^ jitc_mmu.S:1180:6: error: unknown token in expression mov %dl, %al ^ jitc_mmu.S:1180:6: error: Unexpected token! mov %dl, %al ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1195:2: note: while in macro instantiation mmu_prologue ^ :1:5: error: Unexpected token! lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1195:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: Unexpected token! mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1195:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: unexpected token in argument list mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1195:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1196:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:1196:6: error: Unexpected token! mov %ebx, %eax ^ jitc_mmu.S:1197:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:1197:6: error: Unexpected token! and %ebx, 0xfff ^ jitc_mmu.S:1198:6: error: unknown token in expression cmp %ebx, 4095 ^ jitc_mmu.S:1198:6: error: Unexpected token! cmp %ebx, 4095 ^ jitc_mmu.S:1199:8: error: Unexpected token! jae 1f ^ jitc_mmu.S:1199:2: error: invalid operand for instruction jae 1f ^ jitc_mmu.S:1203:7: error: Unexpected token! jc 2f ^ jitc_mmu.S:1203:2: error: invalid operand for instruction jc 2f ^ jitc_mmu.S:1204:6: error: unknown token in expression mov %cx, [%rax] ^ jitc_mmu.S:1204:6: error: Unexpected token! mov %cx, [%rax] ^ jitc_mmu.S:1205:6: error: unknown token in expression rol %cx, 8 ^ jitc_mmu.S:1205:6: error: Unexpected token! rol %cx, 8 ^ jitc_mmu.S:1206:8: error: unknown token in expression movsx %edx, %cx ^ jitc_mmu.S:1206:8: error: Unexpected token! movsx %edx, %cx ^ jitc_mmu.S:1209:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1209:6: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:1210:6: error: unknown token in expression mov %esi, 2 ^ jitc_mmu.S:1210:6: error: Unexpected token! mov %esi, 2 ^ jitc_mmu.S:1212:6: error: unknown token in expression rol %ax, 8 ^ jitc_mmu.S:1212:6: error: Unexpected token! rol %ax, 8 ^ jitc_mmu.S:1213:8: error: unknown token in expression movsx %edx, %ax ^ jitc_mmu.S:1213:8: error: Unexpected token! movsx %edx, %ax ^ jitc_mmu.S:1217:7: error: unknown token in expression push %rax ^ jitc_mmu.S:1217:7: error: Unexpected token! push %rax ^ jitc_mmu.S:1220:7: error: Unexpected token! jc 2f ^ jitc_mmu.S:1220:2: error: invalid operand for instruction jc 2f ^ jitc_mmu.S:1221:6: error: unknown token in expression xor %ecx, %ecx ^ jitc_mmu.S:1221:6: error: Unexpected token! xor %ecx, %ecx ^ jitc_mmu.S:1222:6: error: unknown token in expression mov %ch, [%rax] ^ jitc_mmu.S:1222:6: error: Unexpected token! mov %ch, [%rax] ^ jitc_mmu.S:1224:6: error: unknown token in expression mov %eax, [%rsp] ^ jitc_mmu.S:1224:6: error: Unexpected token! mov %eax, [%rsp] ^ jitc_mmu.S:1225:7: error: Unexpected token! mov [%rsp], %ecx ^ jitc_mmu.S:1225:7: error: unexpected token in argument list mov [%rsp], %ecx ^ jitc_mmu.S:1226:6: error: unknown token in expression inc %eax ^ jitc_mmu.S:1226:6: error: Unexpected token! inc %eax ^ jitc_mmu.S:1229:6: error: unknown token in expression pop %rcx ^ jitc_mmu.S:1229:6: error: Unexpected token! pop %rcx ^ jitc_mmu.S:1230:7: error: Unexpected token! jc 3f ^ jitc_mmu.S:1230:2: error: invalid operand for instruction jc 3f ^ jitc_mmu.S:1231:6: error: unknown token in expression mov %cl, [%rax] ^ jitc_mmu.S:1231:6: error: Unexpected token! mov %cl, [%rax] ^ jitc_mmu.S:1232:8: error: unknown token in expression movsx %edx, %cx ^ jitc_mmu.S:1232:8: error: Unexpected token! movsx %edx, %cx ^ jitc_mmu.S:1236:7: error: unknown token in expression push %rdi ^ jitc_mmu.S:1236:7: error: Unexpected token! push %rdi ^ jitc_mmu.S:1237:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1237:6: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:1238:6: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1238:6: error: Unexpected token! mov %esi, 1 ^ jitc_mmu.S:1240:6: error: unknown token in expression xor %ecx, %ecx ^ jitc_mmu.S:1240:6: error: Unexpected token! xor %ecx, %ecx ^ jitc_mmu.S:1241:6: error: unknown token in expression mov %ch, %al ^ jitc_mmu.S:1241:6: error: Unexpected token! mov %ch, %al ^ jitc_mmu.S:1242:6: error: unknown token in expression pop %rdi ^ jitc_mmu.S:1242:6: error: Unexpected token! pop %rdi ^ jitc_mmu.S:1243:8: error: Unexpected token! jmp 1b ^ jitc_mmu.S:1243:2: error: unknown use of instruction mnemonic without a size suffix jmp 1b ^ jitc_mmu.S:1245:7: error: unknown token in expression push %rcx ^ jitc_mmu.S:1245:7: error: Unexpected token! push %rcx ^ jitc_mmu.S:1246:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1246:6: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:1247:6: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1247:6: error: Unexpected token! mov %esi, 1 ^ jitc_mmu.S:1249:6: error: unknown token in expression pop %rcx ^ jitc_mmu.S:1249:6: error: Unexpected token! pop %rcx ^ jitc_mmu.S:1250:6: error: unknown token in expression mov %cl, %al ^ jitc_mmu.S:1250:6: error: Unexpected token! mov %cl, %al ^ jitc_mmu.S:1251:8: error: unknown token in expression movsx %edx, %cx ^ jitc_mmu.S:1251:8: error: Unexpected token! movsx %edx, %cx ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1266:2: note: while in macro instantiation mmu_prologue ^ :1:5: error: Unexpected token! lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1266:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: Unexpected token! mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1266:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: unexpected token in argument list mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1266:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1267:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:1267:6: error: Unexpected token! mov %ebx, %eax ^ jitc_mmu.S:1268:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:1268:6: error: Unexpected token! and %ebx, 0xfff ^ jitc_mmu.S:1269:6: error: unknown token in expression cmp %ebx, 4093 ^ jitc_mmu.S:1269:6: error: Unexpected token! cmp %ebx, 4093 ^ jitc_mmu.S:1270:8: error: Unexpected token! jae 1f ^ jitc_mmu.S:1270:2: error: invalid operand for instruction jae 1f ^ jitc_mmu.S:1274:7: error: Unexpected token! jc 2f ^ jitc_mmu.S:1274:2: error: invalid operand for instruction jc 2f ^ jitc_mmu.S:1275:6: error: unknown token in expression mov %edx, [%rax] ^ jitc_mmu.S:1275:6: error: Unexpected token! mov %edx, [%rax] ^ jitc_mmu.S:1276:8: error: unknown token in expression bswap %edx ^ jitc_mmu.S:1276:8: error: Unexpected token! bswap %edx ^ jitc_mmu.S:1279:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1279:6: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:1280:6: error: unknown token in expression mov %esi, 4 ^ jitc_mmu.S:1280:6: error: Unexpected token! mov %esi, 4 ^ jitc_mmu.S:1282:6: error: unknown token in expression mov %edx, %eax ^ jitc_mmu.S:1282:6: error: Unexpected token! mov %edx, %eax ^ jitc_mmu.S:1283:8: error: unknown token in expression bswap %edx ^ jitc_mmu.S:1283:8: error: Unexpected token! bswap %edx ^ jitc_mmu.S:1286:7: error: unknown token in expression push %rax ^ jitc_mmu.S:1286:7: error: Unexpected token! push %rax ^ jitc_mmu.S:1287:7: error: unknown token in expression push %rbx ^ jitc_mmu.S:1287:7: error: Unexpected token! push %rbx ^ jitc_mmu.S:1290:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:1290:6: error: Unexpected token! pop %rbx ^ jitc_mmu.S:1291:6: error: unknown token in expression mov %ecx, 4096 ^ jitc_mmu.S:1291:6: error: Unexpected token! mov %ecx, 4096 ^ jitc_mmu.S:1292:7: error: Unexpected token! jc 2f ^ jitc_mmu.S:1292:2: error: invalid operand for instruction jc 2f ^ jitc_mmu.S:1293:6: error: unknown token in expression sub %ecx, %ebx ^ jitc_mmu.S:1293:6: error: Unexpected token! sub %ecx, %ebx ^ jitc_mmu.S:1295:7: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1295:7: error: Unexpected token! shl %edx, 8 ^ jitc_mmu.S:1296:7: error: unknown token in expression mov %dl, [%rax] ^ jitc_mmu.S:1296:7: error: Unexpected token! mov %dl, [%rax] ^ jitc_mmu.S:1297:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:1297:7: error: Unexpected token! inc %rax ^ jitc_mmu.S:1298:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:1298:7: error: Unexpected token! dec %ecx ^ jitc_mmu.S:1299:8: error: Unexpected token! jnz 1b ^ jitc_mmu.S:1299:2: error: invalid operand for instruction jnz 1b ^ jitc_mmu.S:1301:6: error: unknown token in expression mov %eax, [%rsp] ^ jitc_mmu.S:1301:6: error: Unexpected token! mov %eax, [%rsp] ^ jitc_mmu.S:1302:7: error: Unexpected token! mov [%rsp], %edx ^ jitc_mmu.S:1302:7: error: unexpected token in argument list mov [%rsp], %edx ^ jitc_mmu.S:1303:6: error: unknown token in expression add %eax, 4 ^ jitc_mmu.S:1303:6: error: Unexpected token! add %eax, 4 ^ jitc_mmu.S:1304:7: error: unknown token in expression push %rbx ^ jitc_mmu.S:1304:7: error: Unexpected token! push %rbx ^ jitc_mmu.S:1305:6: error: unknown token in expression and %eax, 0xfffff000 ^ jitc_mmu.S:1305:6: error: Unexpected token! and %eax, 0xfffff000 ^ jitc_mmu.S:1308:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:1308:6: error: Unexpected token! pop %rbx ^ jitc_mmu.S:1309:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1309:6: error: Unexpected token! pop %rdx ^ jitc_mmu.S:1310:7: error: Unexpected token! jc 3f ^ jitc_mmu.S:1310:2: error: invalid operand for instruction jc 3f ^ jitc_mmu.S:1311:6: error: unknown token in expression sub %ebx, 4092 ^ jitc_mmu.S:1311:6: error: Unexpected token! sub %ebx, 4092 ^ jitc_mmu.S:1313:7: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1313:7: error: Unexpected token! shl %edx, 8 ^ jitc_mmu.S:1314:7: error: unknown token in expression mov %dl, [%rax] ^ jitc_mmu.S:1314:7: error: Unexpected token! mov %dl, [%rax] ^ jitc_mmu.S:1315:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:1315:7: error: Unexpected token! inc %rax ^ jitc_mmu.S:1316:7: error: unknown token in expression dec %ebx ^ jitc_mmu.S:1316:7: error: Unexpected token! dec %ebx ^ jitc_mmu.S:1317:8: error: Unexpected token! jnz 1b ^ jitc_mmu.S:1317:2: error: invalid operand for instruction jnz 1b ^ jitc_mmu.S:1321:6: error: unknown token in expression sub %ecx, %ebx ^ jitc_mmu.S:1321:6: error: Unexpected token! sub %ecx, %ebx ^ jitc_mmu.S:1322:7: error: unknown token in expression push %rdi ^ jitc_mmu.S:1322:7: error: Unexpected token! push %rdi ^ jitc_mmu.S:1324:7: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1324:7: error: Unexpected token! shl %edx, 8 ^ jitc_mmu.S:1325:8: error: unknown token in expression push %rcx ^ jitc_mmu.S:1325:8: error: Unexpected token! push %rcx ^ jitc_mmu.S:1326:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1326:8: error: Unexpected token! push %rax ^ jitc_mmu.S:1327:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1327:8: error: Unexpected token! push %rdx ^ jitc_mmu.S:1328:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1328:7: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:1329:7: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1329:7: error: Unexpected token! mov %esi, 1 ^ jitc_mmu.S:1331:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1331:7: error: Unexpected token! pop %rdx ^ jitc_mmu.S:1332:7: error: unknown token in expression mov %dl, %al ^ jitc_mmu.S:1332:7: error: Unexpected token! mov %dl, %al ^ jitc_mmu.S:1333:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1333:7: error: Unexpected token! pop %rax ^ jitc_mmu.S:1334:7: error: unknown token in expression pop %rcx ^ jitc_mmu.S:1334:7: error: Unexpected token! pop %rcx ^ jitc_mmu.S:1335:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:1335:7: error: Unexpected token! inc %eax ^ jitc_mmu.S:1336:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:1336:7: error: Unexpected token! dec %ecx ^ jitc_mmu.S:1337:8: error: Unexpected token! jnz 1b ^ jitc_mmu.S:1337:2: error: invalid operand for instruction jnz 1b ^ jitc_mmu.S:1338:6: error: unknown token in expression pop %rdi ^ jitc_mmu.S:1338:6: error: Unexpected token! pop %rdi ^ jitc_mmu.S:1339:8: error: Unexpected token! jmp 4b ^ jitc_mmu.S:1339:2: error: unknown use of instruction mnemonic without a size suffix jmp 4b ^ jitc_mmu.S:1341:6: error: unknown token in expression sub %ebx, 4092 ^ jitc_mmu.S:1341:6: error: Unexpected token! sub %ebx, 4092 ^ jitc_mmu.S:1343:7: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1343:7: error: Unexpected token! shl %edx, 8 ^ jitc_mmu.S:1344:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1344:8: error: Unexpected token! push %rax ^ jitc_mmu.S:1345:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1345:8: error: Unexpected token! push %rdx ^ jitc_mmu.S:1346:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1346:7: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:1347:7: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1347:7: error: Unexpected token! mov %esi, 1 ^ jitc_mmu.S:1349:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1349:7: error: Unexpected token! pop %rdx ^ jitc_mmu.S:1350:7: error: unknown token in expression mov %dl, %al ^ jitc_mmu.S:1350:7: error: Unexpected token! mov %dl, %al ^ jitc_mmu.S:1351:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1351:7: error: Unexpected token! pop %rax ^ jitc_mmu.S:1352:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:1352:7: error: Unexpected token! inc %eax ^ jitc_mmu.S:1353:7: error: unknown token in expression dec %ebx ^ jitc_mmu.S:1353:7: error: Unexpected token! dec %ebx ^ jitc_mmu.S:1354:8: error: Unexpected token! jnz 1b ^ jitc_mmu.S:1354:2: error: invalid operand for instruction jnz 1b ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1368:2: note: while in macro instantiation mmu_prologue ^ :1:5: error: Unexpected token! lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1368:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: Unexpected token! mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1368:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: unexpected token in argument list mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1368:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1369:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:1369:6: error: Unexpected token! mov %ebx, %eax ^ jitc_mmu.S:1370:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:1370:6: error: Unexpected token! and %ebx, 0xfff ^ jitc_mmu.S:1371:6: error: unknown token in expression cmp %ebx, 4089 ^ jitc_mmu.S:1371:6: error: Unexpected token! cmp %ebx, 4089 ^ jitc_mmu.S:1372:8: error: Unexpected token! jae 1f ^ jitc_mmu.S:1372:2: error: invalid operand for instruction jae 1f ^ jitc_mmu.S:1376:7: error: Unexpected token! jc 2f ^ jitc_mmu.S:1376:2: error: invalid operand for instruction jc 2f ^ jitc_mmu.S:1377:6: error: unknown token in expression mov %rdx, [%rax] ^ jitc_mmu.S:1377:6: error: Unexpected token! mov %rdx, [%rax] ^ jitc_mmu.S:1378:8: error: unknown token in expression bswap %rdx ^ jitc_mmu.S:1378:8: error: Unexpected token! bswap %rdx ^ jitc_mmu.S:1381:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1381:6: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:1383:6: error: unknown token in expression mov %rdx, %rax ^ jitc_mmu.S:1383:6: error: Unexpected token! mov %rdx, %rax ^ jitc_mmu.S:1384:8: error: unknown token in expression bswap %rdx ^ jitc_mmu.S:1384:8: error: Unexpected token! bswap %rdx ^ jitc_mmu.S:1388:7: error: unknown token in expression push %rax ^ jitc_mmu.S:1388:7: error: Unexpected token! push %rax ^ jitc_mmu.S:1389:7: error: unknown token in expression push %rbx ^ jitc_mmu.S:1389:7: error: Unexpected token! push %rbx ^ jitc_mmu.S:1392:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:1392:6: error: Unexpected token! pop %rbx ^ jitc_mmu.S:1393:6: error: unknown token in expression mov %r12d, 4096 ^ jitc_mmu.S:1393:6: error: Unexpected token! mov %r12d, 4096 ^ jitc_mmu.S:1394:7: error: Unexpected token! jc 2f ^ jitc_mmu.S:1394:2: error: invalid operand for instruction jc 2f ^ jitc_mmu.S:1395:6: error: unknown token in expression sub %r12d, %ebx ^ jitc_mmu.S:1395:6: error: Unexpected token! sub %r12d, %ebx ^ jitc_mmu.S:1397:7: error: unknown token in expression shl %rdx, 8 ^ jitc_mmu.S:1397:7: error: Unexpected token! shl %rdx, 8 ^ jitc_mmu.S:1398:7: error: unknown token in expression mov %dl, [%rax] ^ jitc_mmu.S:1398:7: error: Unexpected token! mov %dl, [%rax] ^ jitc_mmu.S:1399:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:1399:7: error: Unexpected token! inc %rax ^ jitc_mmu.S:1400:7: error: unknown token in expression dec %r12d ^ jitc_mmu.S:1400:7: error: Unexpected token! dec %r12d ^ jitc_mmu.S:1401:8: error: Unexpected token! jnz 1b ^ jitc_mmu.S:1401:2: error: invalid operand for instruction jnz 1b ^ jitc_mmu.S:1403:6: error: unknown token in expression pop %rax ^ jitc_mmu.S:1403:6: error: Unexpected token! pop %rax ^ jitc_mmu.S:1404:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1404:7: error: Unexpected token! push %rdx ^ jitc_mmu.S:1405:6: error: unknown token in expression add %eax, 8 ^ jitc_mmu.S:1405:6: error: Unexpected token! add %eax, 8 ^ jitc_mmu.S:1406:7: error: unknown token in expression push %rbx ^ jitc_mmu.S:1406:7: error: Unexpected token! push %rbx ^ jitc_mmu.S:1407:6: error: unknown token in expression and %eax, 0xfffff000 ^ jitc_mmu.S:1407:6: error: Unexpected token! and %eax, 0xfffff000 ^ jitc_mmu.S:1410:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:1410:6: error: Unexpected token! pop %rbx ^ jitc_mmu.S:1411:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1411:6: error: Unexpected token! pop %rdx ^ jitc_mmu.S:1412:7: error: Unexpected token! jc 3f ^ jitc_mmu.S:1412:2: error: invalid operand for instruction jc 3f ^ jitc_mmu.S:1413:6: error: unknown token in expression sub %ebx, 4088 ^ jitc_mmu.S:1413:6: error: Unexpected token! sub %ebx, 4088 ^ jitc_mmu.S:1415:7: error: unknown token in expression shl %rdx, 8 ^ jitc_mmu.S:1415:7: error: Unexpected token! shl %rdx, 8 ^ jitc_mmu.S:1416:7: error: unknown token in expression mov %dl, [%rax] ^ jitc_mmu.S:1416:7: error: Unexpected token! mov %dl, [%rax] ^ jitc_mmu.S:1417:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:1417:7: error: Unexpected token! inc %rax ^ jitc_mmu.S:1418:7: error: unknown token in expression dec %ebx ^ jitc_mmu.S:1418:7: error: Unexpected token! dec %ebx ^ jitc_mmu.S:1419:8: error: Unexpected token! jnz 1b ^ jitc_mmu.S:1419:2: error: invalid operand for instruction jnz 1b ^ jitc_mmu.S:1423:6: error: unknown token in expression sub %r12d, %ebx ^ jitc_mmu.S:1423:6: error: Unexpected token! sub %r12d, %ebx ^ jitc_mmu.S:1424:7: error: unknown token in expression push %rdi ^ jitc_mmu.S:1424:7: error: Unexpected token! push %rdi ^ jitc_mmu.S:1426:7: error: unknown token in expression shl %rdx, 8 ^ jitc_mmu.S:1426:7: error: Unexpected token! shl %rdx, 8 ^ jitc_mmu.S:1427:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1427:8: error: Unexpected token! push %rax ^ jitc_mmu.S:1428:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1428:8: error: Unexpected token! push %rdx ^ jitc_mmu.S:1429:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1429:7: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:1430:7: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1430:7: error: Unexpected token! mov %esi, 1 ^ jitc_mmu.S:1432:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1432:7: error: Unexpected token! pop %rdx ^ jitc_mmu.S:1433:7: error: unknown token in expression mov %dl, %al ^ jitc_mmu.S:1433:7: error: Unexpected token! mov %dl, %al ^ jitc_mmu.S:1434:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1434:7: error: Unexpected token! pop %rax ^ jitc_mmu.S:1435:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:1435:7: error: Unexpected token! inc %eax ^ jitc_mmu.S:1436:7: error: unknown token in expression dec %r12d ^ jitc_mmu.S:1436:7: error: Unexpected token! dec %r12d ^ jitc_mmu.S:1437:8: error: Unexpected token! jnz 1b ^ jitc_mmu.S:1437:2: error: invalid operand for instruction jnz 1b ^ jitc_mmu.S:1438:6: error: unknown token in expression pop %rdi ^ jitc_mmu.S:1438:6: error: Unexpected token! pop %rdi ^ jitc_mmu.S:1439:8: error: Unexpected token! jmp 4b ^ jitc_mmu.S:1439:2: error: unknown use of instruction mnemonic without a size suffix jmp 4b ^ jitc_mmu.S:1441:6: error: unknown token in expression sub %ebx, 4088 ^ jitc_mmu.S:1441:6: error: Unexpected token! sub %ebx, 4088 ^ jitc_mmu.S:1443:7: error: unknown token in expression shl %rdx, 8 ^ jitc_mmu.S:1443:7: error: Unexpected token! shl %rdx, 8 ^ jitc_mmu.S:1444:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1444:8: error: Unexpected token! push %rax ^ jitc_mmu.S:1445:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1445:8: error: Unexpected token! push %rdx ^ jitc_mmu.S:1446:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1446:7: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:1447:7: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1447:7: error: Unexpected token! mov %esi, 1 ^ jitc_mmu.S:1449:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1449:7: error: Unexpected token! pop %rdx ^ jitc_mmu.S:1450:7: error: unknown token in expression mov %dl, %al ^ jitc_mmu.S:1450:7: error: Unexpected token! mov %dl, %al ^ jitc_mmu.S:1451:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1451:7: error: Unexpected token! pop %rax ^ jitc_mmu.S:1452:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:1452:7: error: Unexpected token! inc %eax ^ jitc_mmu.S:1453:7: error: unknown token in expression dec %ebx ^ jitc_mmu.S:1453:7: error: Unexpected token! dec %ebx ^ jitc_mmu.S:1454:8: error: Unexpected token! jnz 1b ^ jitc_mmu.S:1454:2: error: invalid operand for instruction jnz 1b ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1468:2: note: while in macro instantiation mmu_prologue ^ :1:5: error: Unexpected token! lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1468:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: Unexpected token! mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1468:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: unexpected token in argument list mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1468:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1469:6: error: unknown token in expression and %eax, 0xfffffff0 ^ jitc_mmu.S:1469:6: error: Unexpected token! and %eax, 0xfffffff0 ^ jitc_mmu.S:1470:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1470:7: error: Unexpected token! push %rdx ^ jitc_mmu.S:1474:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1474:6: error: Unexpected token! pop %rdx ^ jitc_mmu.S:1475:7: error: Unexpected token! jc 1f ^ jitc_mmu.S:1475:2: error: invalid operand for instruction jc 1f ^ jitc_mmu.S:1477:6: error: unknown token in expression mov %rbx, [%rax] ^ jitc_mmu.S:1477:6: error: Unexpected token! mov %rbx, [%rax] ^ jitc_mmu.S:1478:6: error: unknown token in expression mov %rsi, [%rax+8] ^ jitc_mmu.S:1478:6: error: Unexpected token! mov %rsi, [%rax+8] ^ jitc_mmu.S:1480:8: error: unknown token in expression bswap %rbx ^ jitc_mmu.S:1480:8: error: Unexpected token! bswap %rbx ^ jitc_mmu.S:1481:8: error: unknown token in expression bswap %rsi ^ jitc_mmu.S:1481:8: error: Unexpected token! bswap %rsi ^ jitc_mmu.S:1483:7: error: Unexpected token! mov [%rdx+8], %rbx ^ jitc_mmu.S:1483:7: error: unexpected token in argument list mov [%rdx+8], %rbx ^ jitc_mmu.S:1484:7: error: Unexpected token! mov [%rdx], %rsi ^ jitc_mmu.S:1484:7: error: unexpected token in argument list mov [%rdx], %rsi ^ jitc_mmu.S:1487:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1487:6: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:1488:6: error: unknown token in expression mov %rsi, %rdx ^ jitc_mmu.S:1488:6: error: Unexpected token! mov %rsi, %rdx ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1492:2: note: while in macro instantiation mmu_prologue ^ :1:5: error: Unexpected token! lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1492:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: Unexpected token! mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1492:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: unexpected token in argument list mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1492:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1493:6: error: unknown token in expression and %eax, 0xfffffff0 ^ jitc_mmu.S:1493:6: error: Unexpected token! and %eax, 0xfffffff0 ^ jitc_mmu.S:1494:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1494:7: error: Unexpected token! push %rdx ^ jitc_mmu.S:1498:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1498:6: error: Unexpected token! pop %rdx ^ jitc_mmu.S:1499:7: error: Unexpected token! jc 1f ^ jitc_mmu.S:1499:2: error: invalid operand for instruction jc 1f ^ jitc_mmu.S:1501:9: error: unknown token in expression movaps %xmm0, [%rax] ^ jitc_mmu.S:1501:9: error: Unexpected token! movaps %xmm0, [%rax] ^ jitc_mmu.S:1503:6: error: unknown token in expression mov %rbx, [%rax] ^ jitc_mmu.S:1503:6: error: Unexpected token! mov %rbx, [%rax] ^ jitc_mmu.S:1504:6: error: unknown token in expression mov %rsi, [%rax+8] ^ jitc_mmu.S:1504:6: error: Unexpected token! mov %rsi, [%rax+8] ^ jitc_mmu.S:1506:8: error: unknown token in expression bswap %rbx ^ jitc_mmu.S:1506:8: error: Unexpected token! bswap %rbx ^ jitc_mmu.S:1507:8: error: unknown token in expression bswap %rsi ^ jitc_mmu.S:1507:8: error: Unexpected token! bswap %rsi ^ jitc_mmu.S:1509:7: error: Unexpected token! mov [%rdx+8], %rbx ^ jitc_mmu.S:1509:7: error: unexpected token in argument list mov [%rdx+8], %rbx ^ jitc_mmu.S:1510:7: error: Unexpected token! mov [%rdx], %rsi ^ jitc_mmu.S:1510:7: error: unexpected token in argument list mov [%rdx], %rsi ^ jitc_mmu.S:1514:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1514:7: error: Unexpected token! push %rdx ^ jitc_mmu.S:1515:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1515:6: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:1516:6: error: unknown token in expression mov %rsi, %rdx ^ jitc_mmu.S:1516:6: error: Unexpected token! mov %rsi, %rdx ^ jitc_mmu.S:1518:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1518:6: error: Unexpected token! pop %rdx ^ jitc_mmu.S:1520:9: error: unknown token in expression movaps %xmm0, [%rdx] ^ jitc_mmu.S:1520:9: error: Unexpected token! movaps %xmm0, [%rdx] ^ jitc_mmu.S:1522:6: error: unknown token in expression mov %rax, [%rdx] ^ jitc_mmu.S:1522:6: error: Unexpected token! mov %rax, [%rdx] ^ jitc_mmu.S:1523:6: error: unknown token in expression mov %rsi, [%rdx+8] ^ jitc_mmu.S:1523:6: error: Unexpected token! mov %rsi, [%rdx+8] ^ jitc_mmu.S:1525:8: error: unknown token in expression bswap %rax ^ jitc_mmu.S:1525:8: error: Unexpected token! bswap %rax ^ jitc_mmu.S:1526:8: error: unknown token in expression bswap %rsi ^ jitc_mmu.S:1526:8: error: Unexpected token! bswap %rsi ^ jitc_mmu.S:1528:7: error: Unexpected token! mov [%rdx+8], %rsi ^ jitc_mmu.S:1528:7: error: unexpected token in argument list mov [%rdx+8], %rsi ^ jitc_mmu.S:1529:7: error: Unexpected token! mov [%rdx], %rax ^ jitc_mmu.S:1529:7: error: unexpected token in argument list mov [%rdx], %rax ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1544:2: note: while in macro instantiation mmu_prologue ^ :1:5: error: Unexpected token! lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1544:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: Unexpected token! mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1544:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: unexpected token in argument list mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1544:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1545:6: error: unknown token in expression mov %r8d, 1 ^ jitc_mmu.S:1545:6: error: Unexpected token! mov %r8d, 1 ^ jitc_mmu.S:1548:7: error: unknown token in expression dec %r8d ^ jitc_mmu.S:1548:7: error: Unexpected token! dec %r8d ^ jitc_mmu.S:1549:9: error: Unexpected token! jnz 2f ^ jitc_mmu.S:1549:3: error: invalid operand for instruction jnz 2f ^ jitc_mmu.S:1550:8: error: unknown token in expression mov %edx, [%rdi+gpr+4*%rbx] ^ jitc_mmu.S:1550:8: error: Unexpected token! mov %edx, [%rdi+gpr+4*%rbx] ^ jitc_mmu.S:1551:8: error: unknown token in expression inc %ebx ^ jitc_mmu.S:1551:8: error: Unexpected token! inc %ebx ^ jitc_mmu.S:1552:8: error: unknown token in expression mov %r8d, 4 ^ jitc_mmu.S:1552:8: error: Unexpected token! mov %r8d, 4 ^ jitc_mmu.S:1553:8: error: unknown token in expression and %ebx, 0x1f ^ jitc_mmu.S:1553:8: error: Unexpected token! and %ebx, 0x1f ^ jitc_mmu.S:1555:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1555:8: error: Unexpected token! push %rax ^ jitc_mmu.S:1556:8: error: unknown token in expression push %rcx ^ jitc_mmu.S:1556:8: error: Unexpected token! push %rcx ^ jitc_mmu.S:1557:8: error: unknown token in expression push %rbx ^ jitc_mmu.S:1557:8: error: Unexpected token! push %rbx ^ jitc_mmu.S:1558:8: error: unknown token in expression push %r8 ^ jitc_mmu.S:1558:8: error: Unexpected token! push %r8 ^ jitc_mmu.S:1559:8: error: unknown token in expression push %rdi ^ jitc_mmu.S:1559:8: error: Unexpected token! push %rdi ^ jitc_mmu.S:1560:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1560:8: error: Unexpected token! push %rdx ^ jitc_mmu.S:1563:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1563:7: error: Unexpected token! pop %rdx ^ jitc_mmu.S:1564:7: error: unknown token in expression mov %ecx, %edx ^ jitc_mmu.S:1564:7: error: Unexpected token! mov %ecx, %edx ^ jitc_mmu.S:1565:8: error: Unexpected token! jc 3f ^ jitc_mmu.S:1565:3: error: invalid operand for instruction jc 3f ^ jitc_mmu.S:1566:7: error: unknown token in expression shr %ecx, 24 ^ jitc_mmu.S:1566:7: error: Unexpected token! shr %ecx, 24 ^ jitc_mmu.S:1567:8: error: Unexpected token! mov [%rax], %cl ^ jitc_mmu.S:1567:8: error: unexpected token in argument list mov [%rax], %cl ^ jitc_mmu.S:1569:7: error: unknown token in expression pop %rdi ^ jitc_mmu.S:1569:7: error: Unexpected token! pop %rdi ^ jitc_mmu.S:1570:7: error: unknown token in expression pop %r8 ^ jitc_mmu.S:1570:7: error: Unexpected token! pop %r8 ^ jitc_mmu.S:1571:7: error: unknown token in expression pop %rbx ^ jitc_mmu.S:1571:7: error: Unexpected token! pop %rbx ^ jitc_mmu.S:1572:7: error: unknown token in expression pop %rcx ^ jitc_mmu.S:1572:7: error: Unexpected token! pop %rcx ^ jitc_mmu.S:1573:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1573:7: error: Unexpected token! pop %rax ^ jitc_mmu.S:1574:7: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1574:7: error: Unexpected token! shl %edx, 8 ^ jitc_mmu.S:1575:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:1575:7: error: Unexpected token! inc %eax ^ jitc_mmu.S:1576:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:1576:7: error: Unexpected token! dec %ecx ^ jitc_mmu.S:1577:8: error: Unexpected token! jnz 1b ^ jitc_mmu.S:1577:2: error: invalid operand for instruction jnz 1b ^ jitc_mmu.S:1581:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1581:7: error: Unexpected token! push %rdx ^ jitc_mmu.S:1582:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1582:6: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:1583:6: error: unknown token in expression shr %edx, 24 ^ jitc_mmu.S:1583:6: error: Unexpected token! shr %edx, 24 ^ jitc_mmu.S:1584:6: error: unknown token in expression mov %esi, %edx ^ jitc_mmu.S:1584:6: error: Unexpected token! mov %esi, %edx ^ jitc_mmu.S:1585:6: error: unknown token in expression mov %edx, 1 ^ jitc_mmu.S:1585:6: error: Unexpected token! mov %edx, 1 ^ jitc_mmu.S:1587:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1587:6: error: Unexpected token! pop %rdx ^ jitc_mmu.S:1588:8: error: Unexpected token! jmp 4b ^ jitc_mmu.S:1588:2: error: unknown use of instruction mnemonic without a size suffix jmp 4b ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1601:2: note: while in macro instantiation mmu_prologue ^ :1:5: error: Unexpected token! lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1601:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: Unexpected token! mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1601:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: unexpected token in argument list mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1601:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1602:6: error: unknown token in expression mov %r8d, 4 ^ jitc_mmu.S:1602:6: error: Unexpected token! mov %r8d, 4 ^ jitc_mmu.S:1604:6: error: unknown token in expression or %r8d, %r8d ^ jitc_mmu.S:1604:6: error: Unexpected token! or %r8d, %r8d ^ jitc_mmu.S:1605:9: error: Unexpected token! jnz 2f ^ jitc_mmu.S:1605:3: error: invalid operand for instruction jnz 2f ^ jitc_mmu.S:1606:9: error: Unexpected token! mov [%rdi+gpr+4*%rbx], %edx ^ jitc_mmu.S:1606:9: error: unexpected token in argument list mov [%rdi+gpr+4*%rbx], %edx ^ jitc_mmu.S:1607:8: error: unknown token in expression inc %ebx ^ jitc_mmu.S:1607:8: error: Unexpected token! inc %ebx ^ jitc_mmu.S:1608:8: error: unknown token in expression mov %r8d, 4 ^ jitc_mmu.S:1608:8: error: Unexpected token! mov %r8d, 4 ^ jitc_mmu.S:1609:8: error: unknown token in expression and %ebx, 0x1f ^ jitc_mmu.S:1609:8: error: Unexpected token! and %ebx, 0x1f ^ jitc_mmu.S:1610:8: error: unknown token in expression xor %edx, %edx ^ jitc_mmu.S:1610:8: error: Unexpected token! xor %edx, %edx ^ jitc_mmu.S:1613:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1613:8: error: Unexpected token! push %rax ^ jitc_mmu.S:1614:8: error: unknown token in expression push %rcx ^ jitc_mmu.S:1614:8: error: Unexpected token! push %rcx ^ jitc_mmu.S:1615:8: error: unknown token in expression push %rbx ^ jitc_mmu.S:1615:8: error: Unexpected token! push %rbx ^ jitc_mmu.S:1616:8: error: unknown token in expression push %rdi ^ jitc_mmu.S:1616:8: error: Unexpected token! push %rdi ^ jitc_mmu.S:1617:8: error: unknown token in expression push %r8 ^ jitc_mmu.S:1617:8: error: Unexpected token! push %r8 ^ jitc_mmu.S:1618:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1618:8: error: Unexpected token! push %rdx ^ jitc_mmu.S:1621:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1621:7: error: Unexpected token! pop %rdx ^ jitc_mmu.S:1622:8: error: Unexpected token! jc 3f ^ jitc_mmu.S:1622:3: error: invalid operand for instruction jc 3f ^ jitc_mmu.S:1623:7: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1623:7: error: Unexpected token! shl %edx, 8 ^ jitc_mmu.S:1624:7: error: unknown token in expression mov %dl, byte ptr [%rax] ^ jitc_mmu.S:1624:7: error: Unexpected token! mov %dl, byte ptr [%rax] ^ jitc_mmu.S:1626:7: error: unknown token in expression pop %r8 ^ jitc_mmu.S:1626:7: error: Unexpected token! pop %r8 ^ jitc_mmu.S:1627:7: error: unknown token in expression pop %rdi ^ jitc_mmu.S:1627:7: error: Unexpected token! pop %rdi ^ jitc_mmu.S:1628:7: error: unknown token in expression pop %rbx ^ jitc_mmu.S:1628:7: error: Unexpected token! pop %rbx ^ jitc_mmu.S:1629:7: error: unknown token in expression pop %rcx ^ jitc_mmu.S:1629:7: error: Unexpected token! pop %rcx ^ jitc_mmu.S:1630:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1630:7: error: Unexpected token! pop %rax ^ jitc_mmu.S:1632:7: error: unknown token in expression dec %r8d ^ jitc_mmu.S:1632:7: error: Unexpected token! dec %r8d ^ jitc_mmu.S:1633:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:1633:7: error: Unexpected token! inc %eax ^ jitc_mmu.S:1634:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:1634:7: error: Unexpected token! dec %ecx ^ jitc_mmu.S:1635:8: error: Unexpected token! jnz 1b ^ jitc_mmu.S:1635:2: error: invalid operand for instruction jnz 1b ^ jitc_mmu.S:1637:5: error: unknown token in expression or %r8d, %r8d ^ jitc_mmu.S:1637:5: error: Unexpected token! or %r8d, %r8d ^ jitc_mmu.S:1638:7: error: Unexpected token! jz 5f ^ jitc_mmu.S:1638:2: error: invalid operand for instruction jz 5f ^ jitc_mmu.S:1640:8: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1640:8: error: Unexpected token! shl %edx, 8 ^ jitc_mmu.S:1641:8: error: unknown token in expression dec %r8d ^ jitc_mmu.S:1641:8: error: Unexpected token! dec %r8d ^ jitc_mmu.S:1642:9: error: Unexpected token! jnz 2b ^ jitc_mmu.S:1642:3: error: invalid operand for instruction jnz 2b ^ jitc_mmu.S:1645:7: error: Unexpected token! mov [%rdi+gpr+4*%rbx], %edx ^ jitc_mmu.S:1645:7: error: unexpected token in argument list mov [%rdi+gpr+4*%rbx], %edx ^ jitc_mmu.S:1649:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1649:7: error: Unexpected token! push %rdx ^ jitc_mmu.S:1650:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1650:6: error: Unexpected token! mov %edi, %eax ^ jitc_mmu.S:1651:6: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1651:6: error: Unexpected token! mov %esi, 1 ^ jitc_mmu.S:1653:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1653:6: error: Unexpected token! pop %rdx ^ jitc_mmu.S:1654:6: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1654:6: error: Unexpected token! shl %edx, 8 ^ jitc_mmu.S:1655:6: error: unknown token in expression mov %dl, %al ^ jitc_mmu.S:1655:6: error: Unexpected token! mov %dl, %al ^ jitc_mmu.S:1656:8: error: Unexpected token! jmp 4b ^ jitc_mmu.S:1656:2: error: unknown use of instruction mnemonic without a size suffix jmp 4b ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1664:2: note: while in macro instantiation mmu_prologue ^ :1:5: error: Unexpected token! lea %rdi, [%rsp+(8+8*1)] ^ :5:2: note: while in macro instantiation getCurCPU 1 ^ jitc_mmu.S:1664:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: Unexpected token! mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1664:2: note: while in macro instantiation mmu_prologue ^ :6:7: error: unexpected token in argument list mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1664:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1666:6: error: unknown token in expression add %eax, 1 # FIXME: WTF??? ^ jitc_mmu.S:1666:6: error: Unexpected token! add %eax, 1 # FIXME: WTF??? ^ jitc_mmu.S:1668:7: error: Unexpected token! jc 1f ^ jitc_mmu.S:1668:2: error: invalid operand for instruction jc 1f ^ jitc_mmu.S:1669:6: error: unknown token in expression sub %eax, [gMemory] ^ jitc_mmu.S:1669:6: error: Unexpected token! sub %eax, [gMemory] ^ jitc_mmu.S:1672:6: error: unknown token in expression mov %rdi, [%rdi+jitc] ^ jitc_mmu.S:1672:6: error: Unexpected token! mov %rdi, [%rdi+jitc] ^ jitc_mmu.S:1673:6: error: unknown token in expression mov %rcx, [%rdi+clientPages] ^ jitc_mmu.S:1673:6: error: Unexpected token! mov %rcx, [%rdi+clientPages] ^ jitc_mmu.S:1674:6: error: unknown token in expression shr %eax, 12 ^ jitc_mmu.S:1674:6: error: Unexpected token! shr %eax, 12 ^ jitc_mmu.S:1675:17: error: Unexpected token! cmp qword ptr [%rcx+%rax*8], 0 ^ jitc_mmu.S:1675:17: error: unexpected token in argument list cmp qword ptr [%rcx+%rax*8], 0 ^ jitc_mmu.S:1676:8: error: Unexpected token! jnz 2f ^ jitc_mmu.S:1676:2: error: invalid operand for instruction jnz 2f ^ jitc_mmu.S:1681:6: error: unknown token in expression mov %rsi, [%rcx+%rax*8] ^ jitc_mmu.S:1681:6: error: Unexpected token! mov %rsi, [%rcx+%rax*8] ^ make[5]: *** [jitc_mmu.o] Error 1 make[5]: Leaving directory `/«PKGBUILDDIR»/src/cpu/cpu_jitc_x86_64' make[4]: *** [all-recursive] Error 1 make[3]: *** [all-recursive] Error 1 make[2]: *** [all-recursive] Error 1 make[1]: *** [all] Error 2 dh_auto_build: make -j1 returned exit code 2 make[4]: Leaving directory `/«PKGBUILDDIR»/src/cpu' make[3]: Leaving directory `/«PKGBUILDDIR»/src' make[2]: Leaving directory `/«PKGBUILDDIR»' make[1]: Leaving directory `/«PKGBUILDDIR»' make: *** [build-arch] Error 2 dpkg-buildpackage: error: debian/rules build-arch gave error exit status 2 ──────────────────────────────────────────────────────────────────────────────── Build finished at 20130717-0623 Finished ──────── E: Build failure (dpkg-buildpackage died) ┌──────────────────────────────────────────────────────────────────────────────┐ │ Cleanup │ └──────────────────────────────────────────────────────────────────────────────┘ Purging /«BUILDDIR» Not cleaning session: cloned chroot in use ┌──────────────────────────────────────────────────────────────────────────────┐ │ Summary │ └──────────────────────────────────────────────────────────────────────────────┘ Build Architecture: amd64 Build-Space: 8612 Build-Time: 184 Distribution: unstable Fail-Stage: build Host Architecture: amd64 Install-Time: 17 Job: pearpc_0.5.dfsg-2 Machine Architecture: amd64 Package: pearpc Package-Time: 277 Source-Version: 0.5.dfsg-2 Space: 8612 Status: attempted Version: 0.5.dfsg-2clang1 ──────────────────────────────────────────────────────────────────────────────── Finished at 20130717-0623 Build needed 00:04:37, 8612k disc space DC-Status: Failed 277.615036118s DC-Time-Estimation: 277.615036118 versus expected 93 (r/m: 1.9851079152473117 ; m: 93.0)