DC-Build-Header: pearpc 0.5.dfsg-2 / Sat Feb 02 03:25:43 +0000 2013 DC-Task: logfile:/tmp/pearpc_0.5.dfsg-2_unstable_clang.log version:0.5.dfsg-2 modes:binary-only:clang chroot:unstable source:pearpc esttime:97 architecture:any DC-Sbuild-call: su user -c 'sbuild -n --apt-update -d unstable -v --chroot-setup-commands=/tmp/switch-to-clang pearpc_0.5.dfsg-2' Could not create '/sbuild-nonexistent/logs': No such file or directory Could not create '/sbuild-nonexistent/logs': No such file or directory sbuild (Debian sbuild) 0.62.5 (13 Jul 2011) on ip-10-30-142-22.ec2.internal ╔══════════════════════════════════════════════════════════════════════════════╗ ║ pearpc 0.5.dfsg-2 (amd64) 02 Feb 2013 03:25 ║ ╚══════════════════════════════════════════════════════════════════════════════╝ Package: pearpc Version: 0.5.dfsg-2 Source Version: 0.5.dfsg-2 Distribution: unstable Architecture: amd64 I: NOTICE: Log filtering will replace 'build/pearpc-lZ28bp/pearpc-0.5.dfsg' with '«PKGBUILDDIR»' I: NOTICE: Log filtering will replace 'build/pearpc-lZ28bp' with '«BUILDDIR»' I: NOTICE: Log filtering will replace 'var/lib/schroot/mount/unstable-amd64-sbuild-5ba68cae-af1e-457b-8cee-62482ffc9d3d' with '«CHROOT»' ┌──────────────────────────────────────────────────────────────────────────────┐ │ Update chroot │ └──────────────────────────────────────────────────────────────────────────────┘ Ign http://localhost unstable InRelease Get:1 http://localhost unstable Release.gpg [836 B] Get:2 http://localhost unstable Release [227 kB] Ign http://localhost unstable/main Sources/DiffIndex Ign http://localhost unstable/main amd64 Packages/DiffIndex Get:3 http://localhost unstable/main Translation-en/DiffIndex [7876 B] Get:4 http://localhost unstable/main 2013-02-01-2012.11.pdiff [40 B] Get:5 http://localhost unstable/main 2013-02-01-2012.11.pdiff [40 B] Get:6 http://localhost unstable/main Sources [8235 kB] Get:7 http://localhost unstable/main amd64 Packages [8278 kB] Fetched 16.7 MB in 3s (5221 kB/s) Reading package lists... Reading package lists... Building dependency tree... Reading state information... 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. ┌──────────────────────────────────────────────────────────────────────────────┐ │ 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/debian/ unstable/main pearpc 0.5.dfsg-2 (dsc) [1346 B] Get:2 http://localhost/debian/ unstable/main pearpc 0.5.dfsg-2 (tar) [806 kB] Get:3 http://localhost/debian/ unstable/main pearpc 0.5.dfsg-2 (diff) [7706 B] Fetched 815 kB in 0s (1199 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 'Add an unstable version of clang as repository' Add an unstable version of clang as repository + echo deb http://clang.ecranbleu.org/apt/debian unstable main + apt-get update Ign http://localhost unstable InRelease Hit http://localhost unstable Release.gpg Hit http://localhost unstable Release Ign http://clang.ecranbleu.org unstable InRelease Ign http://localhost unstable/main Sources/DiffIndex Ign http://clang.ecranbleu.org unstable Release.gpg Ign http://localhost unstable/main amd64 Packages/DiffIndex Get:1 http://clang.ecranbleu.org unstable Release [1616 B] Hit http://localhost unstable/main Translation-en/DiffIndex Get:2 http://clang.ecranbleu.org unstable/main amd64 Packages [2354 B] Hit http://localhost unstable/main Sources Ign http://clang.ecranbleu.org unstable/main Translation-en Hit http://localhost unstable/main amd64 Packages Fetched 3970 B in 1s (2625 B/s) Reading package lists... + echo 'Install of clang' Install of clang + apt-get update Ign http://localhost unstable InRelease Hit http://localhost unstable Release.gpg Hit http://localhost unstable Release Ign http://clang.ecranbleu.org unstable InRelease Ign http://clang.ecranbleu.org unstable Release.gpg Ign http://localhost unstable/main Sources/DiffIndex Hit http://clang.ecranbleu.org unstable Release Ign http://localhost unstable/main amd64 Packages/DiffIndex Ign http://clang.ecranbleu.org unstable/main amd64 Packages/DiffIndex Hit http://localhost unstable/main Translation-en/DiffIndex Hit http://localhost unstable/main Sources Hit http://clang.ecranbleu.org unstable/main amd64 Packages Hit http://localhost unstable/main amd64 Packages Ign http://clang.ecranbleu.org unstable/main Translation-en Reading package lists... + apt-get install --yes --no-install-recommends --force-yes clang Reading package lists... Building dependency tree... Reading state information... The following extra packages will be installed: clang-3.2 compiler-rt libclang-common-dev libexpat1 libffi5 libllvm3.2 libncursesw5 libsqlite3-0 libssl1.0.0 mime-support python python-minimal python2.7 python2.7-minimal Suggested packages: python-doc python-tk python2.7-doc binfmt-support Recommended packages: llvm-3.2-dev file The following NEW packages will be installed: clang clang-3.2 compiler-rt libclang-common-dev libexpat1 libffi5 libllvm3.2 libncursesw5 libsqlite3-0 libssl1.0.0 mime-support python python-minimal python2.7 python2.7-minimal 0 upgraded, 15 newly installed, 0 to remove and 0 not upgraded. Need to get 25.3 MB of archives. After this operation, 70.1 MB of additional disk space will be used. WARNING: The following packages cannot be authenticated! libclang-common-dev compiler-rt clang-3.2 clang Get:1 http://localhost/debian/ unstable/main libncursesw5 amd64 5.9-10 [141 kB] Get:2 http://localhost/debian/ unstable/main libssl1.0.0 amd64 1.0.1c-4 [1213 kB] Get:3 http://localhost/debian/ unstable/main libsqlite3-0 amd64 3.7.15.2-1 [463 kB] Get:4 http://localhost/debian/ unstable/main libexpat1 amd64 2.1.0-1 [141 kB] Get:5 http://localhost/debian/ unstable/main libffi5 amd64 3.0.10-3 [24.8 kB] Get:6 http://localhost/debian/ unstable/main libllvm3.2 amd64 3.2-2 [7865 kB] Get:7 http://clang.ecranbleu.org/apt/debian/ unstable/main libclang-common-dev amd64 3.2-2 [303 kB] Get:8 http://localhost/debian/ unstable/main mime-support all 3.52-2 [35.2 kB] Get:9 http://localhost/debian/ unstable/main python2.7-minimal amd64 2.7.3-6 [1783 kB] Get:10 http://localhost/debian/ unstable/main python2.7 amd64 2.7.3-6 [2729 kB] Get:11 http://localhost/debian/ unstable/main python-minimal all 2.7.3-3 [42.5 kB] Get:12 http://localhost/debian/ unstable/main python all 2.7.3-3 [179 kB] Get:13 http://clang.ecranbleu.org/apt/debian/ unstable/main compiler-rt amd64 3.2-2 [312 kB] Get:14 http://clang.ecranbleu.org/apt/debian/ unstable/main clang-3.2 amd64 3.2-2 [10.0 MB] Get:15 http://clang.ecranbleu.org/apt/debian/ unstable/main clang all 3.2-2 [9558 B] debconf: delaying package configuration, since apt-utils is not installed Fetched 25.3 MB in 3s (8221 kB/s) Selecting previously unselected package libncursesw5:amd64. (Reading database ... 13484 files and directories currently installed.) Unpacking libncursesw5:amd64 (from .../libncursesw5_5.9-10_amd64.deb) ... Selecting previously unselected package libssl1.0.0:amd64. Unpacking libssl1.0.0:amd64 (from .../libssl1.0.0_1.0.1c-4_amd64.deb) ... Selecting previously unselected package libsqlite3-0:amd64. Unpacking libsqlite3-0:amd64 (from .../libsqlite3-0_3.7.15.2-1_amd64.deb) ... Selecting previously unselected package libexpat1:amd64. Unpacking libexpat1:amd64 (from .../libexpat1_2.1.0-1_amd64.deb) ... Selecting previously unselected package libffi5:amd64. Unpacking libffi5:amd64 (from .../libffi5_3.0.10-3_amd64.deb) ... Selecting previously unselected package libllvm3.2:amd64. Unpacking libllvm3.2:amd64 (from .../libllvm3.2_3.2-2_amd64.deb) ... Selecting previously unselected package mime-support. Unpacking mime-support (from .../mime-support_3.52-2_all.deb) ... Selecting previously unselected package python2.7-minimal. Unpacking python2.7-minimal (from .../python2.7-minimal_2.7.3-6_amd64.deb) ... Selecting previously unselected package python2.7. Unpacking python2.7 (from .../python2.7_2.7.3-6_amd64.deb) ... Selecting previously unselected package python-minimal. Unpacking python-minimal (from .../python-minimal_2.7.3-3_all.deb) ... Selecting previously unselected package python. Unpacking python (from .../python_2.7.3-3_all.deb) ... Selecting previously unselected package libclang-common-dev. Unpacking libclang-common-dev (from .../libclang-common-dev_3.2-2_amd64.deb) ... Selecting previously unselected package compiler-rt. Unpacking compiler-rt (from .../compiler-rt_3.2-2_amd64.deb) ... Selecting previously unselected package clang-3.2. Unpacking clang-3.2 (from .../clang-3.2_3.2-2_amd64.deb) ... Selecting previously unselected package clang. Unpacking clang (from .../archives/clang_3.2-2_all.deb) ... Setting up libncursesw5:amd64 (5.9-10) ... Setting up libssl1.0.0:amd64 (1.0.1c-4) ... debconf: unable to initialize frontend: Dialog debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.) debconf: falling back to frontend: Readline debconf: unable to initialize frontend: Readline debconf: (This frontend requires a controlling tty.) debconf: falling back to frontend: Teletype Setting up libsqlite3-0:amd64 (3.7.15.2-1) ... Setting up libexpat1:amd64 (2.1.0-1) ... Setting up libffi5:amd64 (3.0.10-3) ... Setting up libllvm3.2:amd64 (3.2-2) ... Setting up mime-support (3.52-2) ... Setting up python2.7-minimal (2.7.3-6) ... Linking and byte-compiling packages for runtime python2.7... Setting up python2.7 (2.7.3-6) ... Setting up python-minimal (2.7.3-3) ... Setting up python (2.7.3-3) ... Setting up libclang-common-dev (3.2-2) ... Setting up compiler-rt (3.2-2) ... Setting up clang-3.2 (3.2-2) ... Setting up clang (3.2-2) ... + echo 'Replace gcc, g++ & cpp by clang' Replace gcc, g++ & cpp by clang + VERSIONS='4.6 4.7' + cd /usr/bin + for VERSION in '$VERSIONS' + rm 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 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 + cd - /«BUILDDIR» + echo 'Block the installation of new gcc version' Block the installation of new gcc version + 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 'Check if gcc, g++ & cpp are actually clang' Check if gcc, g++ & cpp are actually clang + gcc --version + grep clang + cpp --version + grep clang + 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-eA3AVj/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/708 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 ... 14662 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-07F7iD/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 html2text intltool-debian libaa1 libaa1-dev libasound2 libasound2-dev libasprintf-dev libasprintf0c2 libasyncns0 libavahi-client-dev libavahi-client3 libavahi-common-data libavahi-common-dev libavahi-common3 libcaca-dev libcaca0 libcap2 libcroco3 libdbus-1-3 libdbus-1-dev libdirectfb-1.2-9 libdirectfb-dev libdirectfb-extra libdrm2 libelf1 libflac8 libfreetype6 libfreetype6-dev libgettextpo-dev libgettextpo0 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 libjson0 libmagic1 libncurses5-dev libogg0 libpcre3 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-xcb1 libx86-1 libxau-dev libxau6 libxcb-glx0 libxcb1 libxcb1-dev libxdamage1 libxdmcp-dev libxdmcp6 libxext-dev libxext6 libxfixes3 libxi6 libxml2 libxtst6 libxxf86vm1 man-db mesa-common-dev nasm pkg-config po-debconf tsconf x11-common x11proto-core-dev x11proto-input-dev x11proto-kb-dev x11proto-xext-dev xorg-sgml-doctools xtrans-dev zlib1g-dev Suggested packages: wamerican wordlist whois vacation dh-make gettext-doc groff libasound2-plugins libasound2-doc libglib2.0-doc ncurses-doc pulseaudio libxcb-doc libxext-doc less www-browser libmail-box-perl Recommended packages: curl wget lynx-cur autopoint dbus libgl1-mesa-dri shared-mime-info 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 html2text intltool-debian libaa1 libaa1-dev libasound2 libasound2-dev libasprintf-dev libasprintf0c2 libasyncns0 libavahi-client-dev libavahi-client3 libavahi-common-data libavahi-common-dev libavahi-common3 libcaca-dev libcaca0 libcap2 libcroco3 libdbus-1-3 libdbus-1-dev libdirectfb-1.2-9 libdirectfb-dev libdirectfb-extra libdrm2 libelf1 libflac8 libfreetype6 libfreetype6-dev libgettextpo-dev libgettextpo0 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 libjson0 libmagic1 libncurses5-dev libogg0 libpcre3 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-xcb1 libx86-1 libxau-dev libxau6 libxcb-glx0 libxcb1 libxcb1-dev libxdamage1 libxdmcp-dev libxdmcp6 libxext-dev libxext6 libxfixes3 libxi6 libxml2 libxtst6 libxxf86vm1 man-db mesa-common-dev nasm pkg-config po-debconf sbuild-build-depends-pearpc-dummy tsconf x11-common x11proto-core-dev x11proto-input-dev x11proto-kb-dev x11proto-xext-dev xorg-sgml-doctools xtrans-dev zlib1g-dev 0 upgraded, 115 newly installed, 0 to remove and 0 not upgraded. Need to get 33.9 MB/33.9 MB of archives. After this operation, 104 MB of additional disk space will be used. Get:1 http://localhost/debian/ unstable/main libpipeline1 amd64 1.2.2-1 [39.9 kB] Get:2 http://localhost/debian/ unstable/main libpopt0 amd64 1.16-7 [56.4 kB] Get:3 http://localhost/debian/ unstable/main groff-base amd64 1.22.1-2 [741 kB] Get:4 http://localhost/debian/ unstable/main bsdmainutils amd64 9.0.4 [210 kB] Get:5 http://localhost/debian/ unstable/main man-db amd64 2.6.3-3 [898 kB] Get:6 http://localhost/debian/ unstable/main libasprintf0c2 amd64 0.18.1.1-10 [27.2 kB] Get:7 http://localhost/debian/ unstable/main libcap2 amd64 1:2.22-1.2 [13.6 kB] Get:8 http://localhost/debian/ unstable/main libmagic1 amd64 5.11-2 [202 kB] Get:9 http://localhost/debian/ unstable/main libpcre3 amd64 1:8.31-2 [247 kB] Get:10 http://localhost/debian/ unstable/main libwrap0 amd64 7.6.q-24 [62.4 kB] Get:11 http://localhost/debian/ unstable/main libxml2 amd64 2.8.0+dfsg1-7 [903 kB] Get:12 http://localhost/debian/ unstable/main libxau6 amd64 1:1.0.7-1 [18.8 kB] Get:13 http://localhost/debian/ unstable/main libxdmcp6 amd64 1:1.1.1-1 [26.3 kB] Get:14 http://localhost/debian/ unstable/main libxcb1 amd64 1.8.1-2 [50.1 kB] Get:15 http://localhost/debian/ unstable/main libx11-data all 2:1.5.0-1 [189 kB] Get:16 http://localhost/debian/ unstable/main libx11-6 amd64 2:1.5.0-1 [901 kB] Get:17 http://localhost/debian/ unstable/main libaa1 amd64 1.4p5-40 [63.7 kB] Get:18 http://localhost/debian/ unstable/main libasound2 amd64 1.0.25-4 [461 kB] Get:19 http://localhost/debian/ unstable/main libasyncns0 amd64 0.8-4 [13.6 kB] Get:20 http://localhost/debian/ unstable/main libavahi-common-data amd64 0.6.31-1 [134 kB] Get:21 http://localhost/debian/ unstable/main libavahi-common3 amd64 0.6.31-1 [54.3 kB] Get:22 http://localhost/debian/ unstable/main libdbus-1-3 amd64 1.6.8-1 [173 kB] Get:23 http://localhost/debian/ unstable/main libavahi-client3 amd64 0.6.31-1 [59.1 kB] Get:24 http://localhost/debian/ unstable/main libcaca0 amd64 0.99.beta18-1 [395 kB] Get:25 http://localhost/debian/ unstable/main libglib2.0-0 amd64 2.33.12+really2.32.4-5 [1838 kB] Get:26 http://localhost/debian/ unstable/main libcroco3 amd64 0.6.6-2 [134 kB] Get:27 http://localhost/debian/ unstable/main tsconf all 1.0-11 [13.4 kB] Get:28 http://localhost/debian/ unstable/main libts-0.0-0 amd64 1.0-11 [29.9 kB] Get:29 http://localhost/debian/ unstable/main libdirectfb-1.2-9 amd64 1.2.10.0-5 [1203 kB] Get:30 http://localhost/debian/ unstable/main libfreetype6 amd64 2.4.9-1.1 [451 kB] Get:31 http://localhost/debian/ unstable/main libjpeg8 amd64 8d-1 [134 kB] Get:32 http://localhost/debian/ unstable/main libpng12-0 amd64 1.2.49-3 [190 kB] Get:33 http://localhost/debian/ unstable/main libxext6 amd64 2:1.3.1-2 [55.3 kB] Get:34 http://localhost/debian/ unstable/main libdirectfb-extra amd64 1.2.10.0-5 [36.9 kB] Get:35 http://localhost/debian/ unstable/main libdrm2 amd64 2.4.40-1~deb7u2 [459 kB] Get:36 http://localhost/debian/ unstable/main libelf1 amd64 0.153-2 [304 kB] Get:37 http://localhost/debian/ unstable/main libogg0 amd64 1.3.0-4 [20.6 kB] Get:38 http://localhost/debian/ unstable/main libflac8 amd64 1.2.1-6 [154 kB] Get:39 http://localhost/debian/ unstable/main libunistring0 amd64 0.9.3-5 [434 kB] Get:40 http://localhost/debian/ unstable/main libgettextpo0 amd64 0.18.1.1-10 [145 kB] Get:41 http://localhost/debian/ unstable/main libglapi-mesa amd64 8.0.5-3 [46.6 kB] Get:42 http://localhost/debian/ unstable/main libx11-xcb1 amd64 2:1.5.0-1 [139 kB] Get:43 http://localhost/debian/ unstable/main libxcb-glx0 amd64 1.8.1-2 [32.1 kB] Get:44 http://localhost/debian/ unstable/main libxfixes3 amd64 1:5.0-4 [21.5 kB] Get:45 http://localhost/debian/ unstable/main libxdamage1 amd64 1:1.1.3-2 [14.3 kB] Get:46 http://localhost/debian/ unstable/main libxxf86vm1 amd64 1:1.1.2-1 [19.0 kB] Get:47 http://localhost/debian/ unstable/main libgl1-mesa-glx amd64 8.0.5-3 [134 kB] Get:48 http://localhost/debian/ unstable/main libglib2.0-data all 2.33.12+really2.32.4-5 [1607 kB] Get:49 http://localhost/debian/ unstable/main libglib2.0-bin amd64 2.33.12+really2.32.4-5 [868 kB] Get:50 http://localhost/debian/ unstable/main libglu1-mesa amd64 8.0.5-3 [190 kB] Get:51 http://localhost/debian/ unstable/main x11-common all 1:7.7+1 [278 kB] Get:52 http://localhost/debian/ unstable/main libice6 amd64 2:1.0.8-2 [63.1 kB] Get:53 http://localhost/debian/ unstable/main libpcrecpp0 amd64 1:8.31-2 [128 kB] Get:54 http://localhost/debian/ unstable/main libjson0 amd64 0.10-1.2 [24.2 kB] Get:55 http://localhost/debian/ unstable/main libsm6 amd64 2:1.2.1-2 [34.2 kB] Get:56 http://localhost/debian/ unstable/main libvorbis0a amd64 1.3.2-1.3 [109 kB] Get:57 http://localhost/debian/ unstable/main libvorbisenc2 amd64 1.3.2-1.3 [143 kB] Get:58 http://localhost/debian/ unstable/main libsndfile1 amd64 1.0.25-5 [240 kB] Get:59 http://localhost/debian/ unstable/main libxi6 amd64 2:1.6.1-1 [75.0 kB] Get:60 http://localhost/debian/ unstable/main libxtst6 amd64 2:1.2.1-1 [26.6 kB] Get:61 http://localhost/debian/ unstable/main libpulse0 amd64 2.0-6 [231 kB] Get:62 http://localhost/debian/ unstable/main libpulse-mainloop-glib0 amd64 2.0-6 [23.6 kB] Get:63 http://localhost/debian/ unstable/main libsdl1.2debian amd64 1.2.15-5 [220 kB] Get:64 http://localhost/debian/ unstable/main libx86-1 amd64 1.1+ds1-10 [85.8 kB] Get:65 http://localhost/debian/ unstable/main libsvga1 amd64 1:1.4.3-33 [290 kB] Get:66 http://localhost/debian/ unstable/main file amd64 5.11-2 [51.8 kB] Get:67 http://localhost/debian/ unstable/main gettext-base amd64 0.18.1.1-10 [154 kB] Get:68 http://localhost/debian/ unstable/main autotools-dev all 20120608.1 [73.0 kB] Get:69 http://localhost/debian/ unstable/main html2text amd64 1.3.2a-15 [103 kB] Get:70 http://localhost/debian/ unstable/main libasprintf-dev amd64 0.18.1.1-10 [26.8 kB] Get:71 http://localhost/debian/ unstable/main libgettextpo-dev amd64 0.18.1.1-10 [184 kB] Get:72 http://localhost/debian/ unstable/main gettext amd64 0.18.1.1-10 [1815 kB] Get:73 http://localhost/debian/ unstable/main intltool-debian all 0.35.0+20060710.1 [30.8 kB] Get:74 http://localhost/debian/ unstable/main po-debconf all 1.0.16+nmu2 [224 kB] Get:75 http://localhost/debian/ unstable/main debhelper all 9.20120909 [705 kB] Get:76 http://localhost/debian/ unstable/main xorg-sgml-doctools all 1:1.10-1 [24.1 kB] Get:77 http://localhost/debian/ unstable/main x11proto-core-dev all 7.0.23-1 [774 kB] Get:78 http://localhost/debian/ unstable/main libxau-dev amd64 1:1.0.7-1 [21.7 kB] Get:79 http://localhost/debian/ unstable/main libxdmcp-dev amd64 1:1.1.1-1 [42.3 kB] Get:80 http://localhost/debian/ unstable/main x11proto-input-dev all 2.2-1 [172 kB] Get:81 http://localhost/debian/ unstable/main x11proto-kb-dev all 1.0.6-2 [269 kB] Get:82 http://localhost/debian/ unstable/main xtrans-dev all 1.2.7-1 [112 kB] Get:83 http://localhost/debian/ unstable/main libpthread-stubs0 amd64 0.3-3 [3228 B] Get:84 http://localhost/debian/ unstable/main libpthread-stubs0-dev amd64 0.3-3 [3998 B] Get:85 http://localhost/debian/ unstable/main libxcb1-dev amd64 1.8.1-2 [88.1 kB] Get:86 http://localhost/debian/ unstable/main libx11-dev amd64 2:1.5.0-1 [1037 kB] Get:87 http://localhost/debian/ unstable/main zlib1g-dev amd64 1:1.2.7.dfsg-13 [215 kB] Get:88 http://localhost/debian/ unstable/main libpng12-dev amd64 1.2.49-3 [267 kB] Get:89 http://localhost/debian/ unstable/main libslang2-dev amd64 2.2.4-15 [595 kB] Get:90 http://localhost/debian/ unstable/main libtinfo-dev amd64 5.9-10 [105 kB] Get:91 http://localhost/debian/ unstable/main libncurses5-dev amd64 5.9-10 [223 kB] Get:92 http://localhost/debian/ unstable/main libaa1-dev amd64 1.4p5-40 [145 kB] Get:93 http://localhost/debian/ unstable/main libasound2-dev amd64 1.0.25-4 [70.3 kB] Get:94 http://localhost/debian/ unstable/main libavahi-common-dev amd64 0.6.31-1 [72.0 kB] Get:95 http://localhost/debian/ unstable/main pkg-config amd64 0.26-1 [59.5 kB] Get:96 http://localhost/debian/ unstable/main libdbus-1-dev amd64 1.6.8-1 [246 kB] Get:97 http://localhost/debian/ unstable/main libavahi-client-dev amd64 0.6.31-1 [66.3 kB] Get:98 http://localhost/debian/ unstable/main libcaca-dev amd64 0.99.beta18-1 [1005 kB] Get:99 http://localhost/debian/ unstable/main libfreetype6-dev amd64 2.4.9-1.1 [805 kB] Get:100 http://localhost/debian/ unstable/main libjpeg8-dev amd64 8d-1 [242 kB] Get:101 http://localhost/debian/ unstable/main x11proto-xext-dev all 7.2.1-1 [273 kB] Get:102 http://localhost/debian/ unstable/main libxext-dev amd64 2:1.3.1-2 [115 kB] Get:103 http://localhost/debian/ unstable/main libdirectfb-dev amd64 1.2.10.0-5 [928 kB] Get:104 http://localhost/debian/ unstable/main mesa-common-dev amd64 8.0.5-3 [277 kB] Get:105 http://localhost/debian/ unstable/main libgl1-mesa-dev amd64 8.0.5-3 [32.5 kB] Get:106 http://localhost/debian/ unstable/main libpcre3-dev amd64 1:8.31-2 [356 kB] Get:107 http://localhost/debian/ unstable/main libglib2.0-dev amd64 2.33.12+really2.32.4-5 [2051 kB] Get:108 http://localhost/debian/ unstable/main libglu1-mesa-dev amd64 8.0.5-3 [226 kB] Get:109 http://localhost/debian/ unstable/main libgpm-dev amd64 1.20.4-6 [39.9 kB] Get:110 http://localhost/debian/ unstable/main libpulse-dev amd64 2.0-6 [78.5 kB] Get:111 http://localhost/debian/ unstable/main libts-dev amd64 1.0-11 [11.7 kB] Get:112 http://localhost/debian/ unstable/main libsdl1.2-dev amd64 1.2.15-5 [905 kB] Get:113 http://localhost/debian/ unstable/main libsvga1-dev amd64 1:1.4.3-33 [559 kB] Get:114 http://localhost/debian/ unstable/main nasm amd64 2.10.01-1 [1463 kB] debconf: delaying package configuration, since apt-utils is not installed Fetched 33.9 MB in 5s (6748 kB/s) Selecting previously unselected package libpipeline1:amd64. (Reading database ... 14662 files and directories currently installed.) Unpacking libpipeline1:amd64 (from .../libpipeline1_1.2.2-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.1-2_amd64.deb) ... Selecting previously unselected package bsdmainutils. Unpacking bsdmainutils (from .../bsdmainutils_9.0.4_amd64.deb) ... Selecting previously unselected package man-db. Unpacking man-db (from .../man-db_2.6.3-3_amd64.deb) ... Selecting previously unselected package libasprintf0c2:amd64. Unpacking libasprintf0c2:amd64 (from .../libasprintf0c2_0.18.1.1-10_amd64.deb) ... Selecting previously unselected package libcap2:amd64. Unpacking libcap2:amd64 (from .../libcap2_1%3a2.22-1.2_amd64.deb) ... Selecting previously unselected package libmagic1:amd64. Unpacking libmagic1:amd64 (from .../libmagic1_5.11-2_amd64.deb) ... Selecting previously unselected package libpcre3:amd64. Unpacking libpcre3:amd64 (from .../libpcre3_1%3a8.31-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.8.0+dfsg1-7_amd64.deb) ... Selecting previously unselected package libxau6:amd64. Unpacking libxau6:amd64 (from .../libxau6_1%3a1.0.7-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.8.1-2_amd64.deb) ... Selecting previously unselected package libx11-data. Unpacking libx11-data (from .../libx11-data_2%3a1.5.0-1_all.deb) ... Selecting previously unselected package libx11-6:amd64. Unpacking libx11-6:amd64 (from .../libx11-6_2%3a1.5.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:amd64. Unpacking libasound2:amd64 (from .../libasound2_1.0.25-4_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-1_amd64.deb) ... Selecting previously unselected package libavahi-common3:amd64. Unpacking libavahi-common3:amd64 (from .../libavahi-common3_0.6.31-1_amd64.deb) ... Selecting previously unselected package libdbus-1-3:amd64. Unpacking libdbus-1-3:amd64 (from .../libdbus-1-3_1.6.8-1_amd64.deb) ... Selecting previously unselected package libavahi-client3:amd64. Unpacking libavahi-client3:amd64 (from .../libavahi-client3_0.6.31-1_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.33.12+really2.32.4-5_amd64.deb) ... Selecting previously unselected package libcroco3:amd64. Unpacking libcroco3:amd64 (from .../libcroco3_0.6.6-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-3_amd64.deb) ... Selecting previously unselected package libxext6:amd64. Unpacking libxext6:amd64 (from .../libxext6_2%3a1.3.1-2_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.40-1~deb7u2_amd64.deb) ... Selecting previously unselected package libelf1:amd64. Unpacking libelf1:amd64 (from .../libelf1_0.153-2_amd64.deb) ... Selecting previously unselected package libogg0:amd64. Unpacking libogg0:amd64 (from .../libogg0_1.3.0-4_amd64.deb) ... Selecting previously unselected package libflac8:amd64. Unpacking libflac8:amd64 (from .../libflac8_1.2.1-6_amd64.deb) ... Selecting previously unselected package libunistring0:amd64. Unpacking libunistring0:amd64 (from .../libunistring0_0.9.3-5_amd64.deb) ... Selecting previously unselected package libgettextpo0:amd64. Unpacking libgettextpo0:amd64 (from .../libgettextpo0_0.18.1.1-10_amd64.deb) ... Selecting previously unselected package libglapi-mesa:amd64. Unpacking libglapi-mesa:amd64 (from .../libglapi-mesa_8.0.5-3_amd64.deb) ... Selecting previously unselected package libx11-xcb1:amd64. Unpacking libx11-xcb1:amd64 (from .../libx11-xcb1_2%3a1.5.0-1_amd64.deb) ... Selecting previously unselected package libxcb-glx0:amd64. Unpacking libxcb-glx0:amd64 (from .../libxcb-glx0_1.8.1-2_amd64.deb) ... Selecting previously unselected package libxfixes3:amd64. Unpacking libxfixes3:amd64 (from .../libxfixes3_1%3a5.0-4_amd64.deb) ... Selecting previously unselected package libxdamage1:amd64. Unpacking libxdamage1:amd64 (from .../libxdamage1_1%3a1.1.3-2_amd64.deb) ... Selecting previously unselected package libxxf86vm1:amd64. Unpacking libxxf86vm1:amd64 (from .../libxxf86vm1_1%3a1.1.2-1_amd64.deb) ... Selecting previously unselected package libgl1-mesa-glx:amd64. Unpacking libgl1-mesa-glx:amd64 (from .../libgl1-mesa-glx_8.0.5-3_amd64.deb) ... Selecting previously unselected package libglib2.0-data. Unpacking libglib2.0-data (from .../libglib2.0-data_2.33.12+really2.32.4-5_all.deb) ... Selecting previously unselected package libglib2.0-bin. Unpacking libglib2.0-bin (from .../libglib2.0-bin_2.33.12+really2.32.4-5_amd64.deb) ... Selecting previously unselected package libglu1-mesa:amd64. Unpacking libglu1-mesa:amd64 (from .../libglu1-mesa_8.0.5-3_amd64.deb) ... Selecting previously unselected package x11-common. Unpacking x11-common (from .../x11-common_1%3a7.7+1_all.deb) ... Selecting previously unselected package libice6:amd64. Unpacking libice6:amd64 (from .../libice6_2%3a1.0.8-2_amd64.deb) ... Selecting previously unselected package libpcrecpp0:amd64. Unpacking libpcrecpp0:amd64 (from .../libpcrecpp0_1%3a8.31-2_amd64.deb) ... Selecting previously unselected package libjson0:amd64. Unpacking libjson0:amd64 (from .../libjson0_0.10-1.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-5_amd64.deb) ... Selecting previously unselected package libxi6:amd64. Unpacking libxi6:amd64 (from .../libxi6_2%3a1.6.1-1_amd64.deb) ... Selecting previously unselected package libxtst6:amd64. Unpacking libxtst6:amd64 (from .../libxtst6_2%3a1.2.1-1_amd64.deb) ... Selecting previously unselected package libpulse0:amd64. Unpacking libpulse0:amd64 (from .../libpulse0_2.0-6_amd64.deb) ... Selecting previously unselected package libpulse-mainloop-glib0:amd64. Unpacking libpulse-mainloop-glib0:amd64 (from .../libpulse-mainloop-glib0_2.0-6_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 file. Unpacking file (from .../archives/file_5.11-2_amd64.deb) ... Selecting previously unselected package gettext-base. Unpacking gettext-base (from .../gettext-base_0.18.1.1-10_amd64.deb) ... Selecting previously unselected package autotools-dev. Unpacking autotools-dev (from .../autotools-dev_20120608.1_all.deb) ... Selecting previously unselected package html2text. Unpacking html2text (from .../html2text_1.3.2a-15_amd64.deb) ... Selecting previously unselected package libasprintf-dev:amd64. Unpacking libasprintf-dev:amd64 (from .../libasprintf-dev_0.18.1.1-10_amd64.deb) ... Selecting previously unselected package libgettextpo-dev:amd64. Unpacking libgettextpo-dev:amd64 (from .../libgettextpo-dev_0.18.1.1-10_amd64.deb) ... Selecting previously unselected package gettext. Unpacking gettext (from .../gettext_0.18.1.1-10_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.20120909_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.23-1_all.deb) ... Selecting previously unselected package libxau-dev:amd64. Unpacking libxau-dev:amd64 (from .../libxau-dev_1%3a1.0.7-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.2-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.8.1-2_amd64.deb) ... Selecting previously unselected package libx11-dev:amd64. Unpacking libx11-dev:amd64 (from .../libx11-dev_2%3a1.5.0-1_amd64.deb) ... Selecting previously unselected package zlib1g-dev:amd64. Unpacking zlib1g-dev:amd64 (from .../zlib1g-dev_1%3a1.2.7.dfsg-13_amd64.deb) ... Selecting previously unselected package libpng12-dev. Unpacking libpng12-dev (from .../libpng12-dev_1.2.49-3_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-10_amd64.deb) ... Selecting previously unselected package libncurses5-dev. Unpacking libncurses5-dev (from .../libncurses5-dev_5.9-10_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.25-4_amd64.deb) ... Selecting previously unselected package libavahi-common-dev. Unpacking libavahi-common-dev (from .../libavahi-common-dev_0.6.31-1_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. Unpacking libdbus-1-dev (from .../libdbus-1-dev_1.6.8-1_amd64.deb) ... Selecting previously unselected package libavahi-client-dev. Unpacking libavahi-client-dev (from .../libavahi-client-dev_0.6.31-1_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.1-2_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 mesa-common-dev. Unpacking mesa-common-dev (from .../mesa-common-dev_8.0.5-3_amd64.deb) ... Selecting previously unselected package libgl1-mesa-dev. Unpacking libgl1-mesa-dev (from .../libgl1-mesa-dev_8.0.5-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.33.12+really2.32.4-5_amd64.deb) ... Selecting previously unselected package libglu1-mesa-dev. Unpacking libglu1-mesa-dev (from .../libglu1-mesa-dev_8.0.5-3_amd64.deb) ... Selecting previously unselected package libgpm-dev:amd64. Unpacking libgpm-dev:amd64 (from .../libgpm-dev_1.20.4-6_amd64.deb) ... Selecting previously unselected package libpulse-dev:amd64. Unpacking libpulse-dev:amd64 (from .../libpulse-dev_2.0-6_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.01-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) ... Processing triggers for mime-support ... Setting up libpipeline1:amd64 (1.2.2-1) ... Setting up libpopt0:amd64 (1.16-7) ... Setting up groff-base (1.22.1-2) ... Setting up bsdmainutils (9.0.4) ... 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.3-3) ... Building database of manual pages ... Setting up libasprintf0c2:amd64 (0.18.1.1-10) ... Setting up libcap2:amd64 (1:2.22-1.2) ... Setting up libmagic1:amd64 (5.11-2) ... Setting up libpcre3:amd64 (1:8.31-2) ... Setting up libwrap0:amd64 (7.6.q-24) ... Setting up libxml2:amd64 (2.8.0+dfsg1-7) ... Setting up libxau6:amd64 (1:1.0.7-1) ... Setting up libxdmcp6:amd64 (1:1.1.1-1) ... Setting up libxcb1:amd64 (1.8.1-2) ... Setting up libx11-data (2:1.5.0-1) ... Setting up libx11-6:amd64 (2:1.5.0-1) ... Setting up libaa1:amd64 (1.4p5-40) ... Setting up libasound2:amd64 (1.0.25-4) ... Setting up libasyncns0:amd64 (0.8-4) ... Setting up libavahi-common-data:amd64 (0.6.31-1) ... Setting up libavahi-common3:amd64 (0.6.31-1) ... Setting up libdbus-1-3:amd64 (1.6.8-1) ... Setting up libavahi-client3:amd64 (0.6.31-1) ... Setting up libcaca0:amd64 (0.99.beta18-1) ... Setting up libglib2.0-0:amd64 (2.33.12+really2.32.4-5) ... No schema files found: doing nothing. Setting up libcroco3:amd64 (0.6.6-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-3) ... Setting up libxext6:amd64 (2:1.3.1-2) ... Setting up libdirectfb-extra:amd64 (1.2.10.0-5) ... Setting up libdrm2:amd64 (2.4.40-1~deb7u2) ... Setting up libelf1:amd64 (0.153-2) ... Setting up libogg0:amd64 (1.3.0-4) ... Setting up libflac8:amd64 (1.2.1-6) ... Setting up libunistring0:amd64 (0.9.3-5) ... Setting up libgettextpo0:amd64 (0.18.1.1-10) ... Setting up libglapi-mesa:amd64 (8.0.5-3) ... Setting up libx11-xcb1:amd64 (2:1.5.0-1) ... Setting up libxcb-glx0:amd64 (1.8.1-2) ... Setting up libxfixes3:amd64 (1:5.0-4) ... Setting up libxdamage1:amd64 (1:1.1.3-2) ... Setting up libxxf86vm1:amd64 (1:1.1.2-1) ... Setting up libgl1-mesa-glx:amd64 (8.0.5-3) ... Setting up libglib2.0-data (2.33.12+really2.32.4-5) ... Setting up libglib2.0-bin (2.33.12+really2.32.4-5) ... Setting up libglu1-mesa:amd64 (8.0.5-3) ... Setting up x11-common (1:7.7+1) ... 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 libpcrecpp0:amd64 (1:8.31-2) ... Setting up libjson0:amd64 (0.10-1.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-5) ... Setting up libxi6:amd64 (2:1.6.1-1) ... Setting up libxtst6:amd64 (2:1.2.1-1) ... Setting up libpulse0:amd64 (2.0-6) ... Setting up libpulse-mainloop-glib0:amd64 (2.0-6) ... 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 file (5.11-2) ... Setting up gettext-base (0.18.1.1-10) ... Setting up autotools-dev (20120608.1) ... Setting up html2text (1.3.2a-15) ... Setting up libasprintf-dev:amd64 (0.18.1.1-10) ... Setting up libgettextpo-dev:amd64 (0.18.1.1-10) ... Setting up gettext (0.18.1.1-10) ... Setting up intltool-debian (0.35.0+20060710.1) ... Setting up po-debconf (1.0.16+nmu2) ... Setting up debhelper (9.20120909) ... Setting up xorg-sgml-doctools (1:1.10-1) ... Setting up x11proto-core-dev (7.0.23-1) ... Setting up libxau-dev:amd64 (1:1.0.7-1) ... Setting up libxdmcp-dev:amd64 (1:1.1.1-1) ... Setting up x11proto-input-dev (2.2-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.8.1-2) ... Setting up libx11-dev:amd64 (2:1.5.0-1) ... Setting up zlib1g-dev:amd64 (1:1.2.7.dfsg-13) ... Setting up libpng12-dev (1.2.49-3) ... Setting up libslang2-dev:amd64 (2.2.4-15) ... Setting up libtinfo-dev:amd64 (5.9-10) ... Setting up libncurses5-dev (5.9-10) ... Setting up libaa1-dev (1.4p5-40) ... Setting up libasound2-dev:amd64 (1.0.25-4) ... Setting up libavahi-common-dev (0.6.31-1) ... Setting up pkg-config (0.26-1) ... Setting up libdbus-1-dev (1.6.8-1) ... Setting up libavahi-client-dev (0.6.31-1) ... 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.1-2) ... Setting up libdirectfb-dev (1.2.10.0-5) ... Setting up mesa-common-dev (8.0.5-3) ... Setting up libgl1-mesa-dev (8.0.5-3) ... Setting up libpcre3-dev:amd64 (1:8.31-2) ... Setting up libglib2.0-dev (2.33.12+really2.32.4-5) ... Setting up libglu1-mesa-dev (8.0.5-3) ... Setting up libgpm-dev:amd64 (1.20.4-6) ... Setting up libpulse-dev:amd64 (2.0-6) ... 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.01-1) ... Setting up sbuild-build-depends-pearpc-dummy (0.invalid.0) ... ┌──────────────────────────────────────────────────────────────────────────────┐ │ Build environment │ └──────────────────────────────────────────────────────────────────────────────┘ Kernel: Linux 2.6.32-5-xen-amd64 amd64 (x86_64) Toolchain package versions: binutils_2.22-7.1 dpkg-dev_1.16.9 g++-4.6_4.6.3-15 g++-4.7_4.7.2-5 gcc-4.6_4.6.3-15 gcc-4.7_4.7.2-5 libc6-dev_2.13-38 libstdc++6_4.7.2-5 libstdc++6-4.6-dev_4.6.3-15 libstdc++6-4.7-dev_4.7.2-5 linux-libc-dev_3.2.35-2 Package versions: apt_0.9.7.7 autotools-dev_20120608.1 base-files_7.1 base-passwd_3.5.26 bash_4.2+dfsg-0.1 binutils_2.22-7.1 bsdmainutils_9.0.4 bsdutils_1:2.20.1-5.3 build-essential_11.6 bzip2_1.0.6-4 clang_3.2-2 clang-3.2_3.2-2 compiler-rt_3.2-2 coreutils_8.20-3 cpp_4:4.7.2-1 cpp-4.6_4.6.3-15 cpp-4.7_4.7.2-5 dash_0.5.7-3 debconf_1.5.49 debconf-i18n_1.5.49 debfoster_2.7-1.2 debhelper_9.20120909 debian-archive-keyring_2012.4 debianutils_4.3.4 diffutils_1:3.2-7 dpkg_1.16.9 dpkg-dev_1.16.9 e2fslibs_1.42.5-1 e2fsprogs_1.42.5-1 fakeroot_1.18.4-2 file_5.11-2 findutils_4.4.2-5 g++_4:4.7.2-1 g++-4.6_4.6.3-15 g++-4.7_4.7.2-5 gcc_4:4.7.2-1 gcc-4.4-base_4.4.7-3 gcc-4.5-base_4.5.4-1 gcc-4.6_4.6.3-15 gcc-4.6-base_4.6.3-15 gcc-4.7_4.7.2-5 gcc-4.7-base_4.7.2-5 gettext_0.18.1.1-10 gettext-base_0.18.1.1-10 gnupg_1.4.12-7 gpgv_1.4.12-7 grep_2.14-1 groff-base_1.22.1-2 gzip_1.5-1.1 hostname_3.12 html2text_1.3.2a-15 initscripts_2.88dsf-39 insserv_1.14.0-5 intltool-debian_0.35.0+20060710.1 libaa1_1.4p5-40 libaa1-dev_1.4p5-40 libacl1_2.2.51-8 libapt-pkg4.12_0.9.7.7 libasound2_1.0.25-4 libasound2-dev_1.0.25-4 libasprintf-dev_0.18.1.1-10 libasprintf0c2_0.18.1.1-10 libasyncns0_0.8-4 libattr1_1:2.4.46-8 libavahi-client-dev_0.6.31-1 libavahi-client3_0.6.31-1 libavahi-common-data_0.6.31-1 libavahi-common-dev_0.6.31-1 libavahi-common3_0.6.31-1 libblkid1_2.20.1-5.3 libbz2-1.0_1.0.6-4 libc-bin_2.13-38 libc-dev-bin_2.13-38 libc6_2.13-38 libc6-dev_2.13-38 libcaca-dev_0.99.beta18-1 libcaca0_0.99.beta18-1 libcap2_1:2.22-1.2 libclang-common-dev_3.2-2 libclass-isa-perl_0.36-5 libcomerr2_1.42.5-1 libcroco3_0.6.6-2 libdb5.1_5.1.29-5 libdbus-1-3_1.6.8-1 libdbus-1-dev_1.6.8-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.9 libdrm2_2.4.40-1~deb7u2 libelf1_0.153-2 libexpat1_2.1.0-1 libffi5_3.0.10-3 libfile-fcntllock-perl_0.14-2 libflac8_1.2.1-6 libfreetype6_2.4.9-1.1 libfreetype6-dev_2.4.9-1.1 libgc1c2_1:7.1-9.1 libgcc1_1:4.7.2-5 libgdbm3_1.8.3-11 libgettextpo-dev_0.18.1.1-10 libgettextpo0_0.18.1.1-10 libgl1-mesa-dev_8.0.5-3 libgl1-mesa-glx_8.0.5-3 libglapi-mesa_8.0.5-3 libglib2.0-0_2.33.12+really2.32.4-5 libglib2.0-bin_2.33.12+really2.32.4-5 libglib2.0-data_2.33.12+really2.32.4-5 libglib2.0-dev_2.33.12+really2.32.4-5 libglu1-mesa_8.0.5-3 libglu1-mesa-dev_8.0.5-3 libgmp10_2:5.0.5+dfsg-2 libgomp1_4.7.2-5 libgpm-dev_1.20.4-6 libgpm2_1.20.4-6 libice6_2:1.0.8-2 libitm1_4.7.2-5 libjpeg8_8d-1 libjpeg8-dev_8d-1 libjson0_0.10-1.2 libllvm3.2_3.2-2 liblocale-gettext-perl_1.05-7+b1 liblzma5_5.1.1alpha+20120614-2 libmagic1_5.11-2 libmount1_2.20.1-5.3 libmpc2_0.9-4 libmpfr4_3.1.0-5 libncurses5_5.9-10 libncurses5-dev_5.9-10 libncursesw5_5.9-10 libogg0_1.3.0-4 libpam-modules_1.1.3-7.1 libpam-modules-bin_1.1.3-7.1 libpam-runtime_1.1.3-7.1 libpam0g_1.1.3-7.1 libpcre3_1:8.31-2 libpcre3-dev_1:8.31-2 libpcrecpp0_1:8.31-2 libpipeline1_1.2.2-1 libpng12-0_1.2.49-3 libpng12-dev_1.2.49-3 libpopt0_1.16-7 libpthread-stubs0_0.3-3 libpthread-stubs0-dev_0.3-3 libpulse-dev_2.0-6 libpulse-mainloop-glib0_2.0-6 libpulse0_2.0-6 libquadmath0_4.7.2-5 libreadline6_6.2+dfsg-0.1 libsdl1.2-dev_1.2.15-5 libsdl1.2debian_1.2.15-5 libselinux1_2.1.9-5 libsemanage-common_2.1.6-6 libsemanage1_2.1.6-6 libsepol1_2.1.4-3 libslang2_2.2.4-15 libslang2-dev_2.2.4-15 libsm6_2:1.2.1-2 libsndfile1_1.0.25-5 libsqlite3-0_3.7.15.2-1 libss2_1.42.5-1 libssl1.0.0_1.0.1c-4 libstdc++6_4.7.2-5 libstdc++6-4.6-dev_4.6.3-15 libstdc++6-4.7-dev_4.7.2-5 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-10 libtinfo5_5.9-10 libts-0.0-0_1.0-11 libts-dev_1.0-11 libunistring0_0.9.3-5 libusb-0.1-4_2:0.1.12-23+nmu1 libustr-1.0-1_1.0.4-3 libuuid1_2.20.1-5.3 libvorbis0a_1.3.2-1.3 libvorbisenc2_1.3.2-1.3 libwrap0_7.6.q-24 libx11-6_2:1.5.0-1 libx11-data_2:1.5.0-1 libx11-dev_2:1.5.0-1 libx11-xcb1_2:1.5.0-1 libx86-1_1.1+ds1-10 libxau-dev_1:1.0.7-1 libxau6_1:1.0.7-1 libxcb-glx0_1.8.1-2 libxcb1_1.8.1-2 libxcb1-dev_1.8.1-2 libxdamage1_1:1.1.3-2 libxdmcp-dev_1:1.1.1-1 libxdmcp6_1:1.1.1-1 libxext-dev_2:1.3.1-2 libxext6_2:1.3.1-2 libxfixes3_1:5.0-4 libxi6_2:1.6.1-1 libxml2_2.8.0+dfsg1-7 libxtst6_2:1.2.1-1 libxxf86vm1_1:1.1.2-1 linux-libc-dev_3.2.35-2 login_1:4.1.5.1-1 lsb-base_4.1+Debian9 make_3.81-8.2 man-db_2.6.3-3 mawk_1.3.3-17 mesa-common-dev_8.0.5-3 mime-support_3.52-2 mount_2.20.1-5.3 multiarch-support_2.13-38 nasm_2.10.01-1 ncurses-base_5.9-10 ncurses-bin_5.9-10 passwd_1:4.1.5.1-1 patch_2.6.1-3 perl_5.14.2-17 perl-base_5.14.2-17 perl-modules_5.14.2-17 pkg-config_0.26-1 po-debconf_1.0.16+nmu2 python_2.7.3-3 python-minimal_2.7.3-3 python2.7_2.7.3-6 python2.7-minimal_2.7.3-6 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.1-10 sensible-utils_0.0.7 sudo_1.8.5p2-1 sysv-rc_2.88dsf-39 sysvinit_2.88dsf-39 sysvinit-utils_2.88dsf-39 tar_1.26+dfsg-0.1 tsconf_1.0-11 tzdata_2012j-1 ucf_3.0025+nmu3 util-linux_2.20.1-5.3 vim_2:7.3.547-6 vim-common_2:7.3.547-6 vim-runtime_2:7.3.547-6 x11-common_1:7.7+1 x11proto-core-dev_7.0.23-1 x11proto-input-dev_2.2-1 x11proto-kb-dev_1.0.6-2 x11proto-xext-dev_7.2.1-1 xorg-sgml-doctools_1:1.10-1 xtrans-dev_1.2.7-1 xz-utils_5.1.1alpha+20120614-2 zlib1g_1:1.2.7.dfsg-13 zlib1g-dev_1:1.2.7.dfsg-13 ┌──────────────────────────────────────────────────────────────────────────────┐ │ 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 User Environment ──────────────── HOME=/sbuild-nonexistent LOGNAME=user PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games SCHROOT_CHROOT_NAME=unstable-amd64-sbuild SCHROOT_COMMAND=env SCHROOT_GID=1000 SCHROOT_GROUP=user SCHROOT_SESSION_ID=unstable-amd64-sbuild-5ba68cae-af1e-457b-8cee-62482ffc9d3d 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-2 dpkg-buildpackage: source changed by Leo Costela 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... yes checking for exp2... 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:107:5: error: unknown token in expression or %rax, -1 ^ jitc_mmu.S:108:6: error: unknown token in expression 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:111:6: error: unknown token in expression mov %rdi, %r8 ^ jitc_mmu.S:121:5: error: unknown token in expression or %ecx, -1 ^ jitc_mmu.S:122:6: error: unknown token in expression shr %eax, 12 ^ jitc_mmu.S:123:6: error: unknown token in expression and %eax, 32 -1 ^ jitc_mmu.S:124:7: error: unknown token in expression mov [%rdi+tlb_code_0_eff + %rax*4], %ecx ^ jitc_mmu.S:125:7: error: unknown token in expression mov [%rdi+tlb_data_0_eff + %rax*4], %ecx ^ jitc_mmu.S:126:7: error: unknown token in expression mov [%rdi+tlb_data_8_eff + %rax*4], %ecx ^ jitc_mmu.S:157:7: error: unknown token in expression push %rax ^ jitc_mmu.S:158:7: error: unknown token in expression push %rcx ^ jitc_mmu.S:159:7: error: unknown token in expression push %rsi ^ jitc_mmu.S:160:7: error: unknown token in expression push %rdi ^ jitc_mmu.S:161:7: error: unknown token in expression push %r8 ^ jitc_mmu.S:162:6: error: unknown token in expression mov %edi, %ebx ^ jitc_mmu.S:163:6: error: unknown token in expression sub %edi, 0x84000000 ^ jitc_mmu.S:165:6: error: unknown token in expression pop %r8 ^ jitc_mmu.S:166:6: error: unknown token in expression pop %rdi ^ jitc_mmu.S:167:6: error: unknown token in expression pop %rsi ^ jitc_mmu.S:168:6: error: unknown token in expression pop %rcx ^ jitc_mmu.S:169:6: error: unknown token in expression pop %rax ^ jitc_mmu.S:341:6: error: unknown token in expression 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:343:6: error: unknown token in expression add %rsp, %rbx ^ jitc_mmu.S:344:6: error: unknown token in expression 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:350:6: error: unknown token in expression pop %rbx # bytes to roll back ^ jitc_mmu.S:351:6: error: unknown token in expression add %rsp, %rbx ^ jitc_mmu.S:352:6: error: unknown token in expression 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:358:6: error: unknown token in expression pop %rbx # bytes to roll back ^ jitc_mmu.S:359:6: error: unknown token in expression 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:383:6: error: unknown token in expression mov %edx, %eax ^ jitc_mmu.S:384:6: error: unknown token in expression mov %ecx, %eax ^ jitc_mmu.S:385:6: error: unknown token in expression shr %edx, 12 ^ jitc_mmu.S:386:6: error: unknown token in expression and %ecx, 0xfffff000 ^ jitc_mmu.S:387:6: error: unknown token in expression and %edx, 32 -1 ^ jitc_mmu.S:388:7: error: unknown token in expression mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx ^ jitc_mmu.S:389:17: error: unknown token in expression mov dword ptr [%rdi+tlb_code_0_phys + %rdx*4], 0 ^ jitc_mmu.S:401:6: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_code_0_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_code_0_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:401:22: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_code_0_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_code_0_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:401:38: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_code_0_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_code_0_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:401:52: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_code_0_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_code_0_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:401:74: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_code_0_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_code_0_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:401:91: error: unknown token in expression mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; cmp %ecx, [%rdi+tlb_code_0_eff + %rdx*4]; jne 1f; add %eax, [%rdi+tlb_code_0_phys + %rdx*4]; clc; ret 8; 1: ^ jitc_mmu.S:401: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:403:17: error: unknown token in expression test byte ptr [%rdi+msr], (1<<5) # MSR_IR ^ jitc_mmu.S:404:2: error: invalid instruction mnemonic 'jz' jz ppc_effective_to_physical_code_ret ^ jitc_mmu.S:406:6: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:38: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:72: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:88: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406: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: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:141: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:155: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:171: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:197: error: invalid instruction mnemonic 'jz' mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~ jitc_mmu.S:406:208: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:224: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:240: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:262: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:294: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:328: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:342: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:358: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:374: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:391: error: expected absolute expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:407: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406: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:472: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:489: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:531: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:573: error: expected absolute expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:589: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406:625: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 0*4]; mov %ebx, [%rdi+ibat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 0*4]; or %eax, [%rdi+ibat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:406: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: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: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: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:38: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:72: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:88: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407: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: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:141: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:155: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:171: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:197: error: invalid instruction mnemonic 'jz' mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~ jitc_mmu.S:407:208: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:224: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:240: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:262: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:294: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:328: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:342: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:358: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:374: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:391: error: expected absolute expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:407: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407: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:472: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:489: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:531: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:573: error: expected absolute expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:589: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407:625: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 1*4]; mov %ebx, [%rdi+ibat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 1*4]; or %eax, [%rdi+ibat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:407: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: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: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: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:38: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:72: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:88: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408: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: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:141: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:155: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:171: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:197: error: invalid instruction mnemonic 'jz' mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~ jitc_mmu.S:408:208: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:224: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:240: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:262: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:294: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:328: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:342: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:358: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:374: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:391: error: expected absolute expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:407: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408: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:472: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:489: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:531: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:573: error: expected absolute expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:589: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408:625: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 2*4]; mov %ebx, [%rdi+ibat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 2*4]; or %eax, [%rdi+ibat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:408: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: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: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: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:38: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:72: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:88: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409: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: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:141: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:155: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:171: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:197: error: invalid instruction mnemonic 'jz' mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~ jitc_mmu.S:409:208: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:224: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:240: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:262: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:294: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:328: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:342: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:358: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:374: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:391: error: expected absolute expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:407: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409: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:472: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:489: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:531: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:573: error: expected absolute expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:589: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409:625: error: unknown token in expression mov %edx, [%rdi+ibat_bl + 3*4]; mov %ebx, [%rdi+ibat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+ibatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+ibat_nbl + 3*4]; or %eax, [%rdi+ibat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if code==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_code_0_eff + %rcx*4], %esi; mov [%rdi+tlb_code_0_phys + %rcx*4], %edx; .if code==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:409: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: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: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: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:412:6: error: unknown token in expression shr %ebx, 28 # SR ^ jitc_mmu.S:413:6: error: unknown token in expression mov %edx, [%rdi+sr+4*%rbx] ^ jitc_mmu.S:418:7: error: unknown token in expression test %edx, (1<<28) # SR_N ^ jitc_mmu.S:419:2: error: invalid instruction mnemonic 'jnz' jnz 9f ~^~~~~~~ jitc_mmu.S:421:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:422:6: error: unknown token in expression mov %r12d, %edx ^ jitc_mmu.S:423:6: error: unknown token in expression shr %ebx, 12 ^ jitc_mmu.S:424:6: error: unknown token in expression mov %r8d, %eax ^ jitc_mmu.S:425:6: error: unknown token in expression and %ebx, 0xffff ^ jitc_mmu.S:426:6: error: unknown token in expression shr %r8d, 22 ^ jitc_mmu.S:427:6: error: unknown token in expression and %r12d, 0xffffff ^ jitc_mmu.S:428:6: error: unknown token in expression and %r8d, 0x3f ^ jitc_mmu.S:441:6: error: unknown token in expression xor %ebx, %r12d ^ jitc_mmu.S:446:7: error: unknown token in expression push %rax ^ jitc_mmu.S:447:7: error: unknown token in expression push %rbx # das brauch ich ^ jitc_mmu.S:449:6: error: unknown token in expression and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:450:6: error: unknown token in expression shl %ebx, 6 ^ jitc_mmu.S:451:5: error: unknown token in expression 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:337: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:518: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:724: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:456:746: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:768: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:784: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:800: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:814: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:836: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:853: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:869: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:885: 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:901: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:922: 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:933: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:967: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1009: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1051: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1079: 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:1098: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1116: 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:1128: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1146: 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:1181: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1207: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1225: 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:1240: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:337: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:518: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:724: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:457:746: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:768: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:784: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:800: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:814: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:836: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:853: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:869: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:885: 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:901: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:922: 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:933: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:967: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1009: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1051: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1079: 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:1098: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1116: 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:1128: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1146: 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:1181: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1207: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1225: 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:1240: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:458:749: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:771: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:787: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:803: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:817: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:839: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:856: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:872: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:888: 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:904: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:925: 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:936: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:970: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1012: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1054: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1082: 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:1101: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1119: 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:1131: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1149: 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:1184: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1210: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1228: 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:1243: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:459:749: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:771: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:787: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:803: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:817: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:839: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:856: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:872: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:888: 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:904: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:925: 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:936: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:970: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1012: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1054: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1082: 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:1101: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1119: 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:1131: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1149: 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:1184: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1210: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1228: 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:1243: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:460:749: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:771: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:787: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:803: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:817: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:839: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:856: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:872: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:888: 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:904: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:925: 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:936: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:970: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1012: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1054: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1082: 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:1101: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1119: 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:1131: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1149: 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:1184: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1210: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1228: 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:1243: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:461:749: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:771: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:787: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:803: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:817: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:839: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:856: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:872: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:888: 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:904: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:925: 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:936: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:970: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1012: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1054: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1082: 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:1101: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1119: 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:1131: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1149: 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:1184: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1210: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1228: 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:1243: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:462:749: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:771: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:787: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:803: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:817: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:839: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:856: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:872: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:888: 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:904: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:925: 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:936: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:970: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1012: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1054: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1082: 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:1101: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1119: 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:1131: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1149: 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:1184: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1210: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1228: 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:1243: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:463:749: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:771: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:787: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:803: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:817: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:839: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:856: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:872: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:888: 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:904: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:925: 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:936: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:970: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1012: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1054: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1082: 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:1101: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1119: 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:1131: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1149: 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:1184: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1210: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1228: 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:1243: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:468:6: error: unknown token in expression not %ebx ^ jitc_mmu.S:469:6: error: unknown token in expression and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:470:6: error: unknown token in expression shl %ebx, 6 ^ jitc_mmu.S:471:5: error: unknown token in expression 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:340: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:521: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:730: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:473:752: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:774: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:790: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:806: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:820: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:842: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:859: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:875: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:891: 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:907: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:928: 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:939: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:973: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1015: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1057: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1085: 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:1104: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1122: 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:1134: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1152: 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:1187: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1213: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1231: 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:1246: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:340: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:521: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:730: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:474:752: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:774: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:790: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:806: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:820: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:842: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:859: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:875: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:891: 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:907: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:928: 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:939: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:973: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1015: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1057: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1085: 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:1104: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1122: 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:1134: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1152: 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:1187: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1213: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1231: 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:1246: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:475:755: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:777: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:793: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:809: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:823: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:845: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:862: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:878: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:894: 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:910: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:931: 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:942: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:976: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1018: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1060: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1088: 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:1107: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1125: 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:1137: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1155: 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:1190: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1216: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1234: 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:1249: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:476:755: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:777: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:793: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:809: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:823: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:845: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:862: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:878: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:894: 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:910: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:931: 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:942: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:976: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1018: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1060: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1088: 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:1107: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1125: 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:1137: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1155: 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:1190: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1216: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1234: 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:1249: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:477:755: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:777: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:793: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:809: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:823: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:845: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:862: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:878: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:894: 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:910: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:931: 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:942: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:976: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1018: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1060: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1088: 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:1107: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1125: 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:1137: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1155: 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:1190: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1216: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1234: 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:1249: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:478:755: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:777: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:793: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:809: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:823: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:845: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:862: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:878: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:894: 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:910: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:931: 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:942: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:976: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1018: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1060: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1088: 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:1107: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1125: 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:1137: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1155: 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:1190: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1216: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1234: 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:1249: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:479:755: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:777: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:793: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:809: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:823: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:845: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:862: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:878: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:894: 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:910: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:931: 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:942: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:976: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1018: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1060: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1088: 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:1107: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1125: 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:1137: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1155: 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:1190: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1216: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1234: 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:1249: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:480:755: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:777: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:793: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:809: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:823: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:845: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:862: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:878: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:894: 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:910: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:931: 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:942: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:976: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1018: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1060: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1088: 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:1107: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1125: 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:1137: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1155: 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:1190: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1216: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1234: 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:1249: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_code; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if code==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_code_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_code_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if code==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:486:6: error: unknown token in expression 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:488:6: error: unknown token in expression add %rsp, %rcx ^ jitc_mmu.S:490:6: error: unknown token in expression 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:496:6: error: unknown token in expression pop %rcx # bytes to roll back ^ jitc_mmu.S:497:6: error: unknown token in expression add %rsp, %rcx ^ jitc_mmu.S:499:6: error: unknown token in expression mov %ecx, (1<<28) # PPC_EXC_SRR1_GUARD ^ jitc_mmu.S:504:6: error: unknown token in expression mov %edx, %eax ^ jitc_mmu.S:505:6: error: unknown token in expression mov %ecx, %eax ^ jitc_mmu.S:506:6: error: unknown token in expression shr %edx, 12 ^ jitc_mmu.S:507:6: error: unknown token in expression and %ecx, 0xfffff000 ^ jitc_mmu.S:508:6: error: unknown token in expression and %edx, 32 -1 ^ jitc_mmu.S:509:6: error: unknown token in expression cmp %ecx, [gMemorySize] ^ jitc_mmu.S:510:6: error: unknown token in expression mov %ebx, [gMemory] ^ jitc_mmu.S:511:2: error: invalid operand for instruction ja 4f ^ jitc_mmu.S:512:7: error: unknown token in expression mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx ^ jitc_mmu.S:513:17: error: unknown token in expression 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: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: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: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: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: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: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: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:531:17: error: unknown token in expression test byte ptr [%rdi+msr], (1<<4) # MSR_DR ^ jitc_mmu.S:532:2: error: invalid instruction mnemonic 'jz' jz ppc_effective_to_physical_data_read_ret ^ 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: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: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: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: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: 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: 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: 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:171: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:534:197: error: invalid instruction mnemonic 'jz' 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: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: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: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: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: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: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: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: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: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: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: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:489: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:534:531: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S: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: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: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: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: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: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: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: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: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: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: 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: 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: 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:171: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:535:197: error: invalid instruction mnemonic 'jz' 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: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: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: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: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: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: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: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: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: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: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: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:489: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:535:531: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S: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: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: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: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: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: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: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: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: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: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: 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: 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: 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:171: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:536:197: error: invalid instruction mnemonic 'jz' 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: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: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: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: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: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: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: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: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: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: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: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:489: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:536:531: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S: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: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: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: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: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: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: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: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: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: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: 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: 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: 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:171: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:537:197: error: invalid instruction mnemonic 'jz' 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: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: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: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: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: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: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: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: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: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: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: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:489: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:537:531: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_0_eff + %rcx*4], %esi; mov [%rdi+tlb_data_0_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S: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: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: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: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: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: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:540:6: error: unknown token in expression shr %ebx, 28 # SR ^ jitc_mmu.S:541:6: error: unknown token in expression mov %edx, [%rdi+sr+4*%rbx] ^ jitc_mmu.S:546:6: error: unknown token in expression mov %ebx, %eax ^ jitc_mmu.S:547:6: error: unknown token in expression mov %r12d, %edx ^ jitc_mmu.S:548:6: error: unknown token in expression shr %ebx, 12 ^ jitc_mmu.S:549:6: error: unknown token in expression mov %r8d, %eax ^ jitc_mmu.S:550:6: error: unknown token in expression and %ebx, 0xffff ^ jitc_mmu.S:551:6: error: unknown token in expression shr %r8d, 22 ^ jitc_mmu.S:552:6: error: unknown token in expression and %r12d, 0xffffff ^ jitc_mmu.S:553:6: error: unknown token in expression and %r8d, 0x3f ^ jitc_mmu.S:566:6: error: unknown token in expression xor %ebx, %r12d ^ jitc_mmu.S:571:7: error: unknown token in expression push %rax ^ jitc_mmu.S:572:7: error: unknown token in expression push %rbx # das brauch ich ^ jitc_mmu.S:574:6: error: unknown token in expression and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:575:6: error: unknown token in expression shl %ebx, 6 ^ jitc_mmu.S:576:5: error: unknown token in expression or %ebx, [%rdi+pagetable_base] ^ jitc_mmu.S: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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:337: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:518: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:724: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:581:746: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:768: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:784: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:800: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:814: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:836: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:853: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:869: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:885: 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:901: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:922: 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:933: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:967: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1009: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1051: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1079: 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:1098: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1116: 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:1128: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1146: 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:1181: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1207: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1225: 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:1240: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:337: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:518: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:724: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:582:746: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:768: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:784: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:800: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:814: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:836: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:853: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:869: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:885: 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:901: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:922: 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:933: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:967: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1009: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1051: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1079: 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:1098: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1116: 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:1128: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1146: 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:1181: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1207: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1225: 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:1240: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:583:749: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:771: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:787: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:803: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:817: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:839: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:856: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:872: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:888: 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:904: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:925: 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:936: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:970: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1012: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1054: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1082: 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:1101: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1119: 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:1131: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1149: 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:1184: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1210: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1228: 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:1243: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:584:749: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:771: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:787: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:803: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:817: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:839: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:856: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:872: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:888: 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:904: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:925: 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:936: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:970: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1012: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1054: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1082: 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:1101: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1119: 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:1131: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1149: 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:1184: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1210: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1228: 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:1243: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:585:749: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:771: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:787: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:803: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:817: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:839: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:856: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:872: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:888: 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:904: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:925: 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:936: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:970: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1012: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1054: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1082: 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:1101: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1119: 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:1131: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1149: 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:1184: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1210: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1228: 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:1243: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:586:749: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:771: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:787: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:803: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:817: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:839: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:856: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:872: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:888: 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:904: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:925: 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:936: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:970: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1012: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1054: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1082: 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:1101: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1119: 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:1131: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1149: 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:1184: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1210: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1228: 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:1243: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:587:749: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:771: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:787: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:803: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:817: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:839: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:856: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:872: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:888: 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:904: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:925: 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:936: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:970: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1012: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1054: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1082: 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:1101: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1119: 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:1131: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1149: 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:1184: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1210: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1228: 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:1243: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:588:749: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:771: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:787: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:803: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:817: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:839: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:856: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:872: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:888: 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:904: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:925: 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:936: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:970: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1012: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1054: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1082: 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:1101: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1119: 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:1131: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1149: 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:1184: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1210: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1228: 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:1243: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:593:6: error: unknown token in expression not %ebx ^ jitc_mmu.S:594:6: error: unknown token in expression and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:595:6: error: unknown token in expression shl %ebx, 6 ^ jitc_mmu.S:596:5: error: unknown token in expression 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:340: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:521: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:730: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:598:752: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:774: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:790: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:806: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:820: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:842: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:859: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:875: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:891: 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:907: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:928: 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:939: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:973: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1015: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1057: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1085: 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:1104: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1122: 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:1134: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1152: 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:1187: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1213: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1231: 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:1246: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:340: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:521: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:730: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:599:752: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:774: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:790: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:806: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:820: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:842: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:859: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:875: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:891: 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:907: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:928: 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:939: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:973: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1015: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1057: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1085: 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:1104: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1122: 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:1134: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1152: 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:1187: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1213: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1231: 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:1246: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:600:755: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:777: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:793: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:809: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:823: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:845: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:862: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:878: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:894: 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:910: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:931: 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:942: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:976: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1018: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1060: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1088: 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:1107: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1125: 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:1137: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1155: 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:1190: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1216: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1234: 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:1249: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:601:755: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:777: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:793: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:809: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:823: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:845: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:862: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:878: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:894: 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:910: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:931: 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:942: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:976: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1018: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1060: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1088: 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:1107: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1125: 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:1137: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1155: 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:1190: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1216: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1234: 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:1249: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:602:755: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:777: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:793: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:809: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:823: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:845: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:862: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:878: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:894: 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:910: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:931: 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:942: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:976: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1018: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1060: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1088: 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:1107: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1125: 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:1137: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1155: 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:1190: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1216: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1234: 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:1249: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:603:755: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:777: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:793: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:809: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:823: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:845: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:862: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:878: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:894: 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:910: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:931: 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:942: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:976: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1018: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1060: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1088: 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:1107: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1125: 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:1137: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1155: 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:1190: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1216: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1234: 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:1249: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:604:755: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:777: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:793: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:809: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:823: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:845: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:862: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:878: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:894: 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:910: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:931: 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:942: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:976: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1018: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1060: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1088: 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:1107: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1125: 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:1137: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1155: 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:1190: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1216: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1234: 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:1249: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:605:755: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:777: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:793: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:809: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:823: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:845: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:862: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:878: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:894: 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:910: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:931: 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:942: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:976: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1018: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1060: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1088: 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:1107: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1125: 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:1137: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1155: 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:1190: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1216: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1234: 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:1249: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (0) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_0_data; mov %edx, %esi; .if 0==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_0_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_0_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:611:6: error: unknown token in expression 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:613:6: error: unknown token in expression add %rsp, %rcx ^ jitc_mmu.S:615:6: error: unknown token in expression mov %ecx, (1<<30) # PPC_EXC_DSISR_PAGE ^ jitc_mmu.S:620:6: error: unknown token in expression mov %edx, %eax ^ jitc_mmu.S:621:6: error: unknown token in expression mov %ecx, %eax ^ jitc_mmu.S:622:6: error: unknown token in expression shr %edx, 12 ^ jitc_mmu.S:623:6: error: unknown token in expression and %ecx, 0xfffff000 ^ jitc_mmu.S:624:6: error: unknown token in expression and %edx, 32 -1 ^ jitc_mmu.S:625:6: error: unknown token in expression cmp %ecx, [gMemorySize] ^ jitc_mmu.S:626:6: error: unknown token in expression mov %ebx, [gMemory] ^ jitc_mmu.S:627:2: error: invalid operand for instruction ja 4f ^ jitc_mmu.S:628:7: error: unknown token in expression mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx ^ jitc_mmu.S:629:17: error: unknown token in expression 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: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: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: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: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: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: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: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:647:17: error: unknown token in expression test byte ptr [%rdi+msr], (1<<4) # MSR_DR ^ jitc_mmu.S:648:2: error: invalid instruction mnemonic 'jz' jz ppc_effective_to_physical_data_write_ret ^ 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: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: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: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: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: 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: 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: 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:171: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:650:197: error: invalid instruction mnemonic 'jz' 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: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: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: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: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: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: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: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: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: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: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: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:489: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:650:531: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 0*4]; mov %ebx, [%rdi+dbat_bepi + 0*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 0*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 0*4]; or %eax, [%rdi+dbat_brpn + 0*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S: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: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: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: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: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: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: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: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: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: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: 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: 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: 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:171: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:651:197: error: invalid instruction mnemonic 'jz' 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: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: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: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: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: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: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: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: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: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: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: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:489: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:651:531: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 1*4]; mov %ebx, [%rdi+dbat_bepi + 1*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 1*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 1*4]; or %eax, [%rdi+dbat_brpn + 1*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S: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: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: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: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: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: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: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: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: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: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: 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: 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: 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:171: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:652:197: error: invalid instruction mnemonic 'jz' 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: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: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: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: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: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: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: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: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: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: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: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:489: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:652:531: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 2*4]; mov %ebx, [%rdi+dbat_bepi + 2*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 2*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 2*4]; or %eax, [%rdi+dbat_brpn + 2*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S: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: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: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: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: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: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: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: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: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: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: 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: 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: 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:171: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:653:197: error: invalid instruction mnemonic 'jz' 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: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: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: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: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: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: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: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: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: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: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: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:489: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S:653:531: error: unknown token in expression mov %edx, [%rdi+dbat_bl + 3*4]; mov %ebx, [%rdi+dbat_bepi + 3*4]; and %edx, %eax; cmp %ebx, %edx; jne 3f; bt dword ptr [%rdi+msr], 14; mov %r12d, 2; sbb %r12d, 0; test [%rdi+dbatu + 3*4], %r12d; jz 3f; mov %esi, %eax; mov %ecx, %eax; mov %edx, 0xfffff000; and %eax, [%rdi+dbat_nbl + 3*4]; or %eax, [%rdi+dbat_brpn + 3*4]; shr %ecx, 12; and %esi, %edx; and %edx, %eax; and %ecx, 32 -1; .if data==data; cmp %edx, [gMemorySize]; ja 4f; add %edx, [gMemory]; 6:; .endif; sub %edx, %esi; mov [%rdi+tlb_data_8_eff + %rcx*4], %esi; mov [%rdi+tlb_data_8_phys + %rcx*4], %edx; .if data==data; add %eax, [gMemory]; clc; ret 8; 4: cmp %edx, 0x84000000; jmp 5f; cmp %edx, 0x85000000; ja 5f; sub %edx, 0x84000000; add %edx, [gFrameBuffer]; jmp 6b; 5: stc; .endif; ret 8; 3: ^ jitc_mmu.S: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: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: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: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: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: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:656:6: error: unknown token in expression shr %eax, 28 # SR ^ jitc_mmu.S:657:6: error: unknown token in expression mov %edx, [%rdi+sr+4*%rax] ^ jitc_mmu.S:662:6: error: unknown token in expression mov %eax, %ebx ^ jitc_mmu.S:663:6: error: unknown token in expression mov %r8d, %ebx ^ jitc_mmu.S:664:6: error: unknown token in expression mov %r12d, %edx ^ jitc_mmu.S:665:6: error: unknown token in expression shr %ebx, 12 ^ jitc_mmu.S:666:6: error: unknown token in expression and %ebx, 0xffff ^ jitc_mmu.S:667:6: error: unknown token in expression shr %r8d, 22 ^ jitc_mmu.S:668:6: error: unknown token in expression and %r12d, 0xffffff ^ jitc_mmu.S:669:6: error: unknown token in expression and %r8d, 0x3f ^ jitc_mmu.S:682:6: error: unknown token in expression xor %ebx, %r12d ^ jitc_mmu.S:687:7: error: unknown token in expression push %rax ^ jitc_mmu.S:688:7: error: unknown token in expression push %rbx # das brauch ich ^ jitc_mmu.S:690:6: error: unknown token in expression and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:691:6: error: unknown token in expression shl %ebx, 6 ^ jitc_mmu.S:692:5: error: unknown token in expression 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:337: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:518: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:724: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:697:746: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:768: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:784: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:800: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:814: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:836: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:853: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:869: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:885: 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:901: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:922: 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:933: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:967: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1009: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1051: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1079: 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:1098: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1116: 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:1128: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1146: 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:1181: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1207: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1225: 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:1240: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:337: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:518: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:724: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:698:746: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:768: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:784: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:800: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:814: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:836: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:853: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:869: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:885: 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:901: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:922: 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:933: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:967: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1009: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1051: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1079: 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:1098: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1116: 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:1128: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1146: 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:1181: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1207: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1225: 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:1240: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:699:749: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:771: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:787: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:803: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:817: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:839: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:856: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:872: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:888: 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:904: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:925: 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:936: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:970: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1012: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1054: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1082: 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:1101: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1119: 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:1131: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1149: 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:1184: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1210: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1228: 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:1243: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:700:749: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:771: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:787: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:803: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:817: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:839: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:856: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:872: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:888: 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:904: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:925: 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:936: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:970: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1012: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1054: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1082: 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:1101: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1119: 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:1131: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1149: 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:1184: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1210: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1228: 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:1243: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:701:749: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:771: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:787: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:803: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:817: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:839: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:856: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:872: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:888: 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:904: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:925: 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:936: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:970: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1012: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1054: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1082: 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:1101: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1119: 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:1131: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1149: 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:1184: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1210: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1228: 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:1243: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:702:749: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:771: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:787: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:803: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:817: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:839: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:856: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:872: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:888: 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:904: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:925: 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:936: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:970: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1012: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1054: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1082: 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:1101: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1119: 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:1131: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1149: 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:1184: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1210: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1228: 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:1243: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:703:749: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:771: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:787: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:803: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:817: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:839: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:856: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:872: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:888: 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:904: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:925: 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:936: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:970: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1012: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1054: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1082: 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:1101: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1119: 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:1131: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1149: 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:1184: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1210: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1228: 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:1243: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:339: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:520: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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:726: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:704:749: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:771: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:787: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:803: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:817: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:839: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:856: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:872: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:888: 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:904: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:925: 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:936: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:970: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1012: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1054: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1082: 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:1101: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1119: 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:1131: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1149: 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:1184: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1210: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1228: 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:1243: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (0) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 0==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:709:6: error: unknown token in expression add %rsp, 8 ^ jitc_mmu.S:710:6: error: unknown token in expression not %ebx ^ jitc_mmu.S:711:6: error: unknown token in expression and %ebx, [%rdi+pagetable_hashmask] ^ jitc_mmu.S:712:6: error: unknown token in expression shl %ebx, 6 ^ jitc_mmu.S:713:5: error: unknown token in expression 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:340: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:521: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:730: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:715:752: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:774: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:790: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:806: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:820: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:842: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:859: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:875: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:891: 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:907: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:928: 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:939: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:973: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1015: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1057: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1085: 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:1104: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1122: 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:1134: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1152: 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:1187: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1213: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1231: 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:1246: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 0]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 0]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +0], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:340: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:521: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:730: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:716:752: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:774: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:790: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:806: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:820: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:842: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:859: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:875: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:891: 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:907: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:928: 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:939: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:973: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1015: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1057: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1085: 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:1104: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1122: 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:1134: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1152: 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:1187: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1213: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1231: 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:1246: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 8]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 8]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +8], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:717:755: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:777: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:793: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:809: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:823: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:845: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:862: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:878: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:894: 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:910: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:931: 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:942: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:976: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1018: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1060: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1088: 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:1107: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1125: 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:1137: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1155: 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:1190: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1216: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1234: 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:1249: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 16]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 16]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +16], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:718:755: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:777: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:793: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:809: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:823: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:845: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:862: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:878: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:894: 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:910: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:931: 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:942: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:976: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1018: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1060: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1088: 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:1107: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1125: 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:1137: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1155: 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:1190: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1216: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1234: 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:1249: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 24]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 24]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +24], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:719:755: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:777: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:793: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:809: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:823: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:845: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:862: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:878: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:894: 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:910: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:931: 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:942: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:976: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1018: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1060: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1088: 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:1107: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1125: 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:1137: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1155: 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:1190: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1216: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1234: 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:1249: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 32]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 32]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +32], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:720:755: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:777: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:793: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:809: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:823: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:845: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:862: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:878: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:894: 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:910: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:931: 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:942: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:976: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1018: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1060: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1088: 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:1107: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1125: 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:1137: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1155: 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:1190: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1216: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1234: 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:1249: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 40]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 40]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +40], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:721:755: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:777: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:793: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:809: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:823: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:845: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:862: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:878: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:894: 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:910: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:931: 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:942: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:976: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1018: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1060: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1088: 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:1107: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1125: 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:1137: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1155: 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:1190: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1216: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1234: 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:1249: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 48]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 48]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +48], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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: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: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: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: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: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: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: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: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: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: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: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: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: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: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:342: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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: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: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: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:523: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S: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: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: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: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: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:732: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; ja 5f; call damageframebuffer; add %esi, [gFrameBuffer]; sub %esi, 0x84000000; jmp 6b; 5: add %eax, %esi; stc; ret 8; .endif; 1: ^ jitc_mmu.S:722:755: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:777: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:793: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:809: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:823: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:845: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:862: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:878: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:894: 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:910: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:931: 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:942: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:976: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1018: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1060: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1088: 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:1107: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1125: 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:1137: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1155: 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:1190: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1216: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:1234: 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:1249: error: unknown token in expression mov %rax, [gMemory]; mov %eax, [%rax + %rbx + 56]; bswap %eax; mov %ecx, %eax; and %eax, (1<<6) | (1<<31); cmp %eax, (1<<6) | (1<<31); jne 1f; mov %eax, %ecx; shr %ecx, 7; and %ecx, 0xffffff; cmp %ecx, %r12d; jne 1f; and %eax, 0x3f; cmp %eax, %r8d; jne 1f; mov %rsi, [gMemory]; mov %esi, [%rsi + %rbx + 4 + 56]; bswap %esi; test dword ptr [%rdi+msr], (1<<14); mov %eax, (1<<29); setz %cl; shl %eax, %cl; test %edx, %eax; setnz %al; movzx %eax, %al; mov %ecx, %esi; and %ecx, 3; cmp byte ptr [ppc_pte_protection + (8) + 4*%rax + %rcx], 1; .if 1<<6==0; pop %rdx; .endif; pop %rax; jne protection_fault_8_data; mov %edx, %esi; .if 8==0; or %edx, (1<<8); .else; or %edx, (1<<8) | (1<<7); .endif; bswap %edx; add %rbx, [gMemory]; mov [%rbx+4 +56], %edx; and %esi, 0xfffff000; mov %edx, %eax; mov %ecx, %eax; shr %edx, 12; and %ecx, 0xfffff000; and %edx, 32 -1; mov %ebx, %esi; sub %esi, %ecx; .if data==data; cmp %ebx, [gMemorySize]; ja 4f; add %esi, [gMemory]; 6:; .endif; mov [%rdi+tlb_data_8_eff + %rdx*4], %ecx; mov [%rdi+tlb_data_8_phys + %rdx*4], %esi; add %eax, %esi; clc; ret 8; .if data==data; 4: cmp %ebx, 0x84000000; jmp 5f; cmp %ebx, 0x85000000; 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:728:6: error: unknown token in expression 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:730:6: error: unknown token in expression 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 ^ :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 ^ :6:7: error: unknown token in expression 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:751:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:752:2: error: invalid instruction mnemonic 'jc' jc 1f ~^~~~~~ jitc_mmu.S:753:7: error: unknown token in expression mov [%rax], %dl ^ jitc_mmu.S:756:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:757:8: error: unknown token in expression movzx %esi, %dl ^ jitc_mmu.S:758:6: error: unknown token in expression 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 ^ :6:7: error: unknown token in expression 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:774:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:775:6: error: unknown token in expression cmp %ebx, 4095 ^ 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:781:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:782:2: error: invalid instruction mnemonic 'jc' jc 2f ~^~~~~~ jitc_mmu.S:783:7: error: unknown token in expression mov [%rax], %dh ^ jitc_mmu.S:784:7: error: unknown token in expression mov [%rax+1], %dl ^ jitc_mmu.S:787:6: error: unknown token in expression rol %dx, 8 ^ jitc_mmu.S:788:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:789:8: error: unknown token in expression movzx %esi, %dx ^ jitc_mmu.S:790:6: error: unknown token in expression mov %edx, 2 ^ jitc_mmu.S:794:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:795:7: error: unknown token in expression push %rax ^ jitc_mmu.S:798:6: error: unknown token in expression mov %edx, [%rsp+8] ^ jitc_mmu.S:799:2: error: invalid instruction mnemonic 'jc' jc 1f ~^~~~~~ jitc_mmu.S:800:7: error: unknown token in expression mov [%rax], %dh ^ jitc_mmu.S:802:6: error: unknown token in expression pop %rax ^ jitc_mmu.S:803:6: error: unknown token in expression inc %eax ^ jitc_mmu.S:806:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:807:2: error: invalid instruction mnemonic 'jc' jc 2f ~^~~~~~ jitc_mmu.S:808:7: error: unknown token in expression mov [%rax], %dl ^ jitc_mmu.S:812:8: error: unknown token in expression movzx %esi, %dh ^ jitc_mmu.S:813:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:814:6: error: unknown token in expression mov %edx, 1 ^ :1:5: error: unknown token in expression lea %rdi, [%rsp+(8 +8*1)] ^ jitc_mmu.S:816:2: note: while in macro instantiation getCurCPU 1 ^ 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:820:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:821:6: error: unknown token in expression 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 ^ :6:7: error: unknown token in expression 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:837:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:838:6: error: unknown token in expression cmp %ebx, 4093 ^ 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:843:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:846:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:847:2: error: invalid instruction mnemonic 'jc' jc 2f ~^~~~~~ jitc_mmu.S:848:7: error: unknown token in expression mov [%rax], %edx ^ jitc_mmu.S:852:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:853:6: error: unknown token in expression mov %esi, %edx ^ jitc_mmu.S:854:6: error: unknown token in expression mov %edx, 4 ^ jitc_mmu.S:858:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:859:7: error: unknown token in expression push %rax ^ jitc_mmu.S:862:6: error: unknown token in expression mov %edx, [%rsp+8] ^ jitc_mmu.S:863:6: error: unknown token in expression mov %ebx, [%rsp] ^ jitc_mmu.S:864:6: error: unknown token in expression mov %ecx, 4096 ^ jitc_mmu.S:865:2: error: invalid instruction mnemonic 'jc' jc 2f ~^~~~~~ jitc_mmu.S:866:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:867:6: error: unknown token in expression sub %ecx, %ebx ^ jitc_mmu.S:869:7: error: unknown token in expression rol %edx, 8 ^ jitc_mmu.S:870:8: error: unknown token in expression mov [%rax], %dl ^ jitc_mmu.S:871:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:872:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:873:2: error: invalid instruction mnemonic 'jnz' jnz 1b ~^~~~~~~ jitc_mmu.S:875:7: error: unknown token in expression mov [%rsp+8], %edx ^ jitc_mmu.S:876:6: error: unknown token in expression mov %eax, [%rsp] ^ jitc_mmu.S:877:6: error: unknown token in expression add %eax, 4 ^ jitc_mmu.S:880:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:881:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:882:2: error: invalid instruction mnemonic 'jc' jc 3f ~^~~~~~ jitc_mmu.S:883:6: error: unknown token in expression add %ebx, 4 ^ jitc_mmu.S:884:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:885:6: error: unknown token in expression sub %rax, %rbx ^ jitc_mmu.S:887:7: error: unknown token in expression rol %edx, 8 ^ jitc_mmu.S:888:8: error: unknown token in expression mov [%rax], %dl ^ jitc_mmu.S:889:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:890:7: error: unknown token in expression dec %ebx ^ jitc_mmu.S:891:2: error: invalid instruction mnemonic 'jnz' jnz 1b ~^~~~~~~ jitc_mmu.S:895:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:896:6: error: unknown token in expression sub %ecx, %ebx ^ jitc_mmu.S:898:7: error: unknown token in expression rol %edx, 8 ^ jitc_mmu.S:899:8: error: unknown token in expression push %rax ^ jitc_mmu.S:900:8: error: unknown token in expression push %rcx ^ jitc_mmu.S:901:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:902:9: error: unknown token in expression movzx %esi, %dl ^ jitc_mmu.S:903:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:904:7: error: unknown token in expression mov %edx, 1 ^ jitc_mmu.S:906:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:907:7: error: unknown token in expression pop %rcx ^ jitc_mmu.S:908:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:909:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:910:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:911:2: error: invalid instruction mnemonic 'jnz' jnz 1b ~^~~~~~~ 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:915:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:916:6: error: unknown token in expression sub %eax, %ebx ^ jitc_mmu.S:918:7: error: unknown token in expression rol %edx, 8 ^ jitc_mmu.S:919:8: error: unknown token in expression push %rax ^ jitc_mmu.S:920:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:921:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:922:9: error: unknown token in expression movzx %esi, %dl ^ jitc_mmu.S:923:7: error: unknown token in expression mov %edx, 1 ^ jitc_mmu.S:925:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:926:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:927:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:928:7: error: unknown token in expression dec %rbx ^ jitc_mmu.S:929:2: error: invalid instruction mnemonic 'jnz' 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 ^ :6:7: error: unknown token in expression 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:944:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:945:6: error: unknown token in expression cmp %ebx, 4089 ^ 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:950:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:953:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:954:2: error: invalid instruction mnemonic 'jc' jc 2f ~^~~~~~ jitc_mmu.S:955:7: error: unknown token in expression mov [%rax], %rdx ^ jitc_mmu.S:958:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:959:6: error: unknown token in expression mov %rsi, %rdx ^ jitc_mmu.S:963:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:964:7: error: unknown token in expression push %rax ^ jitc_mmu.S:967:6: error: unknown token in expression mov %rdx, [%rsp+8] ^ jitc_mmu.S:968:6: error: unknown token in expression mov %ebx, [%rsp] ^ jitc_mmu.S:969:6: error: unknown token in expression mov %ecx, 4096 ^ jitc_mmu.S:970:2: error: invalid instruction mnemonic 'jc' jc 2f ~^~~~~~ jitc_mmu.S:971:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:972:6: error: unknown token in expression sub %ecx, %ebx ^ jitc_mmu.S:974:7: error: unknown token in expression rol %rdx, 8 ^ jitc_mmu.S:975:8: error: unknown token in expression mov [%rax], %dl ^ jitc_mmu.S:976:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:977:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:978:2: error: invalid instruction mnemonic 'jnz' jnz 1b ~^~~~~~~ jitc_mmu.S:980:7: error: unknown token in expression mov [%rsp+8], %rdx ^ jitc_mmu.S:981:6: error: unknown token in expression mov %eax, [%rsp] ^ jitc_mmu.S:982:6: error: unknown token in expression add %eax, 8 ^ jitc_mmu.S:985:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:986:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:987:2: error: invalid instruction mnemonic 'jc' jc 3f ~^~~~~~ jitc_mmu.S:988:6: error: unknown token in expression add %ebx, 8 ^ jitc_mmu.S:989:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:990:6: error: unknown token in expression sub %rax, %rbx ^ jitc_mmu.S:992:7: error: unknown token in expression rol %rdx, 8 ^ jitc_mmu.S:993:8: error: unknown token in expression mov [%rax], %dl ^ jitc_mmu.S:994:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:995:7: error: unknown token in expression dec %ebx ^ jitc_mmu.S:996:2: error: invalid instruction mnemonic 'jnz' jnz 1b ~^~~~~~~ jitc_mmu.S:1000:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:1001:6: error: unknown token in expression sub %ecx, %ebx ^ jitc_mmu.S:1003:7: error: unknown token in expression rol %rdx, 8 ^ jitc_mmu.S:1004:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1005:8: error: unknown token in expression push %rcx ^ jitc_mmu.S:1006:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1007:9: error: unknown token in expression movzx %esi, %dl ^ jitc_mmu.S:1008:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1009:7: error: unknown token in expression mov %edx, 1 ^ jitc_mmu.S:1011:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1012:7: error: unknown token in expression pop %rcx ^ jitc_mmu.S:1013:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1014:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:1015:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:1016:2: error: invalid instruction mnemonic 'jnz' jnz 1b ~^~~~~~~ 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:1020:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:1021:6: error: unknown token in expression sub %eax, %ebx ^ jitc_mmu.S:1023:7: error: unknown token in expression rol %rdx, 8 ^ jitc_mmu.S:1024:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1025:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1026:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1027:9: error: unknown token in expression movzx %esi, %dl ^ jitc_mmu.S:1028:7: error: unknown token in expression mov %edx, 1 ^ jitc_mmu.S:1030:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1031:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1032:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:1033:7: error: unknown token in expression dec %rbx ^ jitc_mmu.S:1034:2: error: invalid instruction mnemonic 'jnz' 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 ^ :6:7: error: unknown token in expression 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:1050:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1054:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1055:2: error: invalid instruction mnemonic 'jc' jc 1f ~^~~~~~ jitc_mmu.S:1057:6: error: unknown token in expression mov %rbx, [%rdx] ^ jitc_mmu.S:1058:6: error: unknown token in expression mov %rsi, [%rdx+8] ^ jitc_mmu.S:1060:8: error: unknown token in expression bswap %rbx ^ jitc_mmu.S:1061:8: error: unknown token in expression bswap %rsi ^ jitc_mmu.S:1063:7: error: unknown token in expression mov [%rax+8], %rbx ^ jitc_mmu.S:1064:7: error: unknown token in expression mov [%rax], %rsi ^ jitc_mmu.S:1067:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1068:6: error: unknown token in expression 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 ^ :6:7: error: unknown token in expression 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:1074:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1078:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1079:2: error: invalid instruction mnemonic 'jc' jc 1f ~^~~~~~ jitc_mmu.S:1081:10: error: unknown token in expression movaps [%rax], %xmm0 ^ jitc_mmu.S:1084:10: error: unknown token in expression movaps [%rdx], %xmm0 ^ jitc_mmu.S:1085:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1086:6: error: unknown token in expression 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 ^ :6:7: error: unknown token in expression mov [%rdi+pc_ofs], %esi ^ jitc_mmu.S:1101:2: note: while in macro instantiation mmu_prologue ^ jitc_mmu.S:1105:2: error: invalid instruction mnemonic 'jc' jc 1f ~^~~~~~ jitc_mmu.S:1106:8: error: unknown token in expression movzx %edx, byte ptr [%rax] ^ jitc_mmu.S:1109:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1110:6: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1112:8: error: unknown token in expression 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 ^ :6:7: error: unknown token in expression 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:1129:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:1130:6: error: unknown token in expression cmp %ebx, 4095 ^ jitc_mmu.S:1131:2: error: invalid operand for instruction jae 1f ^ jitc_mmu.S:1135:2: error: invalid instruction mnemonic 'jc' jc 2f ~^~~~~~ jitc_mmu.S:1136:8: error: unknown token in expression movzx %edx, word ptr [%rax] ^ jitc_mmu.S:1137:6: error: unknown token in expression rol %dx, 8 ^ jitc_mmu.S:1140:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1141:6: error: unknown token in expression mov %esi, 2 ^ jitc_mmu.S:1143:6: error: unknown token in expression rol %ax, 8 ^ jitc_mmu.S:1144:8: error: unknown token in expression movzx %edx, %ax ^ jitc_mmu.S:1148:7: error: unknown token in expression push %rax ^ jitc_mmu.S:1151:2: error: invalid instruction mnemonic 'jc' jc 2f ~^~~~~~ jitc_mmu.S:1152:6: error: unknown token in expression xor %edx, %edx ^ jitc_mmu.S:1153:6: error: unknown token in expression mov %dh, [%rax] ^ jitc_mmu.S:1155:6: error: unknown token in expression mov %eax, [%rsp] ^ jitc_mmu.S:1156:7: error: unknown token in expression mov [%rsp], %edx ^ jitc_mmu.S:1157:6: error: unknown token in expression inc %eax ^ jitc_mmu.S:1160:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1161:2: error: invalid instruction mnemonic 'jc' jc 3f ~^~~~~~ jitc_mmu.S:1162:6: error: unknown token in expression mov %dl, [%rax] ^ jitc_mmu.S:1166:7: error: unknown token in expression push %rdi ^ jitc_mmu.S:1167:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1168:6: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1170:6: error: unknown token in expression xor %edx, %edx ^ jitc_mmu.S:1171:6: error: unknown token in expression mov %dh, %al ^ jitc_mmu.S:1172:6: error: unknown token in expression pop %rdi ^ 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:1176:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1177:6: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1179:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1180:6: error: unknown token in expression 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 ^ :6:7: error: unknown token in expression 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:1197:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:1198:6: error: unknown token in expression cmp %ebx, 4095 ^ jitc_mmu.S:1199:2: error: invalid operand for instruction jae 1f ^ jitc_mmu.S:1203:2: error: invalid instruction mnemonic 'jc' jc 2f ~^~~~~~ jitc_mmu.S:1204:6: error: unknown token in expression mov %cx, [%rax] ^ jitc_mmu.S:1205:6: error: unknown token in expression rol %cx, 8 ^ jitc_mmu.S:1206:8: error: unknown token in expression movsx %edx, %cx ^ jitc_mmu.S:1209:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1210:6: error: unknown token in expression mov %esi, 2 ^ jitc_mmu.S:1212:6: error: unknown token in expression rol %ax, 8 ^ jitc_mmu.S:1213:8: error: unknown token in expression movsx %edx, %ax ^ jitc_mmu.S:1217:7: error: unknown token in expression push %rax ^ jitc_mmu.S:1220:2: error: invalid instruction mnemonic 'jc' jc 2f ~^~~~~~ jitc_mmu.S:1221:6: error: unknown token in expression xor %ecx, %ecx ^ jitc_mmu.S:1222:6: error: unknown token in expression mov %ch, [%rax] ^ jitc_mmu.S:1224:6: error: unknown token in expression mov %eax, [%rsp] ^ jitc_mmu.S:1225:7: error: unknown token in expression mov [%rsp], %ecx ^ jitc_mmu.S:1226:6: error: unknown token in expression inc %eax ^ jitc_mmu.S:1229:6: error: unknown token in expression pop %rcx ^ jitc_mmu.S:1230:2: error: invalid instruction mnemonic 'jc' jc 3f ~^~~~~~ jitc_mmu.S:1231:6: error: unknown token in expression mov %cl, [%rax] ^ jitc_mmu.S:1232:8: error: unknown token in expression movsx %edx, %cx ^ jitc_mmu.S:1236:7: error: unknown token in expression push %rdi ^ jitc_mmu.S:1237:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1238:6: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1240:6: error: unknown token in expression xor %ecx, %ecx ^ jitc_mmu.S:1241:6: error: unknown token in expression mov %ch, %al ^ jitc_mmu.S:1242:6: error: unknown token in expression pop %rdi ^ 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:1246:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1247:6: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1249:6: error: unknown token in expression pop %rcx ^ jitc_mmu.S:1250:6: error: unknown token in expression mov %cl, %al ^ jitc_mmu.S:1251:8: error: unknown token in expression 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 ^ :6:7: error: unknown token in expression 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:1268:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:1269:6: error: unknown token in expression cmp %ebx, 4093 ^ jitc_mmu.S:1270:2: error: invalid operand for instruction jae 1f ^ jitc_mmu.S:1274:2: error: invalid instruction mnemonic 'jc' jc 2f ~^~~~~~ jitc_mmu.S:1275:6: error: unknown token in expression mov %edx, [%rax] ^ jitc_mmu.S:1276:8: error: unknown token in expression bswap %edx ^ jitc_mmu.S:1279:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1280:6: error: unknown token in expression mov %esi, 4 ^ jitc_mmu.S:1282:6: error: unknown token in expression mov %edx, %eax ^ jitc_mmu.S:1283:8: error: unknown token in expression bswap %edx ^ jitc_mmu.S:1286:7: error: unknown token in expression push %rax ^ jitc_mmu.S:1287:7: error: unknown token in expression push %rbx ^ jitc_mmu.S:1290:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:1291:6: error: unknown token in expression mov %ecx, 4096 ^ jitc_mmu.S:1292:2: error: invalid instruction mnemonic 'jc' jc 2f ~^~~~~~ jitc_mmu.S:1293:6: error: unknown token in expression sub %ecx, %ebx ^ jitc_mmu.S:1295:7: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1296:7: error: unknown token in expression mov %dl, [%rax] ^ jitc_mmu.S:1297:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:1298:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:1299:2: error: invalid instruction mnemonic 'jnz' jnz 1b ~^~~~~~~ jitc_mmu.S:1301:6: error: unknown token in expression mov %eax, [%rsp] ^ jitc_mmu.S:1302:7: error: unknown token in expression mov [%rsp], %edx ^ jitc_mmu.S:1303:6: error: unknown token in expression add %eax, 4 ^ jitc_mmu.S:1304:7: error: unknown token in expression push %rbx ^ jitc_mmu.S:1305:6: error: unknown token in expression and %eax, 0xfffff000 ^ jitc_mmu.S:1308:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:1309:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1310:2: error: invalid instruction mnemonic 'jc' jc 3f ~^~~~~~ jitc_mmu.S:1311:6: error: unknown token in expression sub %ebx, 4092 ^ jitc_mmu.S:1313:7: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1314:7: error: unknown token in expression mov %dl, [%rax] ^ jitc_mmu.S:1315:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:1316:7: error: unknown token in expression dec %ebx ^ jitc_mmu.S:1317:2: error: invalid instruction mnemonic 'jnz' jnz 1b ~^~~~~~~ jitc_mmu.S:1321:6: error: unknown token in expression sub %ecx, %ebx ^ jitc_mmu.S:1322:7: error: unknown token in expression push %rdi ^ jitc_mmu.S:1324:7: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1325:8: error: unknown token in expression push %rcx ^ jitc_mmu.S:1326:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1327:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1328:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1329:7: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1331:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1332:7: error: unknown token in expression mov %dl, %al ^ jitc_mmu.S:1333:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1334:7: error: unknown token in expression pop %rcx ^ jitc_mmu.S:1335:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:1336:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:1337:2: error: invalid instruction mnemonic 'jnz' jnz 1b ~^~~~~~~ jitc_mmu.S:1338:6: error: unknown token in expression pop %rdi ^ 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:1343:7: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1344:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1345:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1346:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1347:7: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1349:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1350:7: error: unknown token in expression mov %dl, %al ^ jitc_mmu.S:1351:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1352:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:1353:7: error: unknown token in expression dec %ebx ^ jitc_mmu.S:1354:2: error: invalid instruction mnemonic 'jnz' 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 ^ :6:7: error: unknown token in expression 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:1370:6: error: unknown token in expression and %ebx, 0xfff ^ jitc_mmu.S:1371:6: error: unknown token in expression cmp %ebx, 4089 ^ jitc_mmu.S:1372:2: error: invalid operand for instruction jae 1f ^ jitc_mmu.S:1376:2: error: invalid instruction mnemonic 'jc' jc 2f ~^~~~~~ jitc_mmu.S:1377:6: error: unknown token in expression mov %rdx, [%rax] ^ jitc_mmu.S:1378:8: error: unknown token in expression bswap %rdx ^ jitc_mmu.S:1381:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1383:6: error: unknown token in expression mov %rdx, %rax ^ jitc_mmu.S:1384:8: error: unknown token in expression bswap %rdx ^ jitc_mmu.S:1388:7: error: unknown token in expression push %rax ^ jitc_mmu.S:1389:7: error: unknown token in expression push %rbx ^ jitc_mmu.S:1392:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:1393:6: error: unknown token in expression mov %r12d, 4096 ^ jitc_mmu.S:1394:2: error: invalid instruction mnemonic 'jc' jc 2f ~^~~~~~ jitc_mmu.S:1395:6: error: unknown token in expression sub %r12d, %ebx ^ jitc_mmu.S:1397:7: error: unknown token in expression shl %rdx, 8 ^ jitc_mmu.S:1398:7: error: unknown token in expression mov %dl, [%rax] ^ jitc_mmu.S:1399:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:1400:7: error: unknown token in expression dec %r12d ^ jitc_mmu.S:1401:2: error: invalid instruction mnemonic 'jnz' jnz 1b ~^~~~~~~ jitc_mmu.S:1403:6: error: unknown token in expression pop %rax ^ jitc_mmu.S:1404:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1405:6: error: unknown token in expression add %eax, 8 ^ jitc_mmu.S:1406:7: error: unknown token in expression push %rbx ^ jitc_mmu.S:1407:6: error: unknown token in expression and %eax, 0xfffff000 ^ jitc_mmu.S:1410:6: error: unknown token in expression pop %rbx ^ jitc_mmu.S:1411:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1412:2: error: invalid instruction mnemonic 'jc' jc 3f ~^~~~~~ jitc_mmu.S:1413:6: error: unknown token in expression sub %ebx, 4088 ^ jitc_mmu.S:1415:7: error: unknown token in expression shl %rdx, 8 ^ jitc_mmu.S:1416:7: error: unknown token in expression mov %dl, [%rax] ^ jitc_mmu.S:1417:7: error: unknown token in expression inc %rax ^ jitc_mmu.S:1418:7: error: unknown token in expression dec %ebx ^ jitc_mmu.S:1419:2: error: invalid instruction mnemonic 'jnz' jnz 1b ~^~~~~~~ jitc_mmu.S:1423:6: error: unknown token in expression sub %r12d, %ebx ^ jitc_mmu.S:1424:7: error: unknown token in expression push %rdi ^ jitc_mmu.S:1426:7: error: unknown token in expression shl %rdx, 8 ^ jitc_mmu.S:1427:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1428:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1429:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1430:7: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1432:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1433:7: error: unknown token in expression mov %dl, %al ^ jitc_mmu.S:1434:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1435:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:1436:7: error: unknown token in expression dec %r12d ^ jitc_mmu.S:1437:2: error: invalid instruction mnemonic 'jnz' jnz 1b ~^~~~~~~ jitc_mmu.S:1438:6: error: unknown token in expression pop %rdi ^ 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:1443:7: error: unknown token in expression shl %rdx, 8 ^ jitc_mmu.S:1444:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1445:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1446:7: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1447:7: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1449:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1450:7: error: unknown token in expression mov %dl, %al ^ jitc_mmu.S:1451:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1452:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:1453:7: error: unknown token in expression dec %ebx ^ jitc_mmu.S:1454:2: error: invalid instruction mnemonic 'jnz' 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 ^ :6:7: error: unknown token in expression 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:1470:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1474:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1475:2: error: invalid instruction mnemonic 'jc' jc 1f ~^~~~~~ jitc_mmu.S:1477:6: error: unknown token in expression mov %rbx, [%rax] ^ jitc_mmu.S:1478:6: error: unknown token in expression mov %rsi, [%rax+8] ^ jitc_mmu.S:1480:8: error: unknown token in expression bswap %rbx ^ jitc_mmu.S:1481:8: error: unknown token in expression bswap %rsi ^ jitc_mmu.S:1483:7: error: unknown token in expression mov [%rdx+8], %rbx ^ jitc_mmu.S:1484:7: error: unknown token in expression mov [%rdx], %rsi ^ jitc_mmu.S:1487:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1488:6: error: unknown token in expression 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 ^ :6:7: error: unknown token in expression 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:1494:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1498:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1499:2: error: invalid instruction mnemonic 'jc' jc 1f ~^~~~~~ jitc_mmu.S:1501:9: error: unknown token in expression movaps %xmm0, [%rax] ^ jitc_mmu.S:1503:6: error: unknown token in expression mov %rbx, [%rax] ^ jitc_mmu.S:1504:6: error: unknown token in expression mov %rsi, [%rax+8] ^ jitc_mmu.S:1506:8: error: unknown token in expression bswap %rbx ^ jitc_mmu.S:1507:8: error: unknown token in expression bswap %rsi ^ jitc_mmu.S:1509:7: error: unknown token in expression mov [%rdx+8], %rbx ^ jitc_mmu.S:1510:7: error: unknown token in expression mov [%rdx], %rsi ^ jitc_mmu.S:1514:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1515:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1516:6: error: unknown token in expression mov %rsi, %rdx ^ jitc_mmu.S:1518:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1520:9: error: unknown token in expression movaps %xmm0, [%rdx] ^ jitc_mmu.S:1522:6: error: unknown token in expression mov %rax, [%rdx] ^ jitc_mmu.S:1523:6: error: unknown token in expression mov %rsi, [%rdx+8] ^ jitc_mmu.S:1525:8: error: unknown token in expression bswap %rax ^ jitc_mmu.S:1526:8: error: unknown token in expression bswap %rsi ^ jitc_mmu.S:1528:7: error: unknown token in expression mov [%rdx+8], %rsi ^ jitc_mmu.S:1529:7: error: unknown token in expression 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 ^ :6:7: error: unknown token in expression 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:1548:7: error: unknown token in expression dec %r8d ^ jitc_mmu.S:1549:3: error: invalid instruction mnemonic 'jnz' jnz 2f ~~^~~~~~~ jitc_mmu.S:1550:8: error: unknown token in expression mov %edx, [%rdi+gpr+4*%rbx] ^ jitc_mmu.S:1551:8: error: unknown token in expression inc %ebx ^ jitc_mmu.S:1552:8: error: unknown token in expression mov %r8d, 4 ^ jitc_mmu.S:1553:8: error: unknown token in expression and %ebx, 0x1f ^ jitc_mmu.S:1555:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1556:8: error: unknown token in expression push %rcx ^ jitc_mmu.S:1557:8: error: unknown token in expression push %rbx ^ jitc_mmu.S:1558:8: error: unknown token in expression push %r8 ^ jitc_mmu.S:1559:8: error: unknown token in expression push %rdi ^ jitc_mmu.S:1560:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1563:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1564:7: error: unknown token in expression mov %ecx, %edx ^ jitc_mmu.S:1565:3: error: invalid instruction mnemonic 'jc' jc 3f ~~^~~~~~ jitc_mmu.S:1566:7: error: unknown token in expression shr %ecx, 24 ^ jitc_mmu.S:1567:8: error: unknown token in expression mov [%rax], %cl ^ jitc_mmu.S:1569:7: error: unknown token in expression pop %rdi ^ jitc_mmu.S:1570:7: error: unknown token in expression pop %r8 ^ jitc_mmu.S:1571:7: error: unknown token in expression pop %rbx ^ jitc_mmu.S:1572:7: error: unknown token in expression pop %rcx ^ jitc_mmu.S:1573:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1574:7: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1575:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:1576:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:1577:2: error: invalid instruction mnemonic 'jnz' jnz 1b ~^~~~~~~ jitc_mmu.S:1581:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1582:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1583:6: error: unknown token in expression shr %edx, 24 ^ jitc_mmu.S:1584:6: error: unknown token in expression mov %esi, %edx ^ jitc_mmu.S:1585:6: error: unknown token in expression mov %edx, 1 ^ jitc_mmu.S:1587:6: error: unknown token in expression pop %rdx ^ 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 ^ :6:7: error: unknown token in expression 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:1604:6: error: unknown token in expression or %r8d, %r8d ^ jitc_mmu.S:1605:3: error: invalid instruction mnemonic 'jnz' jnz 2f ~~^~~~~~~ jitc_mmu.S:1606:9: error: unknown token in expression mov [%rdi+gpr+4*%rbx], %edx ^ jitc_mmu.S:1607:8: error: unknown token in expression inc %ebx ^ jitc_mmu.S:1608:8: error: unknown token in expression mov %r8d, 4 ^ jitc_mmu.S:1609:8: error: unknown token in expression and %ebx, 0x1f ^ jitc_mmu.S:1610:8: error: unknown token in expression xor %edx, %edx ^ jitc_mmu.S:1613:8: error: unknown token in expression push %rax ^ jitc_mmu.S:1614:8: error: unknown token in expression push %rcx ^ jitc_mmu.S:1615:8: error: unknown token in expression push %rbx ^ jitc_mmu.S:1616:8: error: unknown token in expression push %rdi ^ jitc_mmu.S:1617:8: error: unknown token in expression push %r8 ^ jitc_mmu.S:1618:8: error: unknown token in expression push %rdx ^ jitc_mmu.S:1621:7: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1622:3: error: invalid instruction mnemonic 'jc' jc 3f ~~^~~~~~ jitc_mmu.S:1623:7: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1624:7: error: unknown token in expression mov %dl, byte ptr [%rax] ^ jitc_mmu.S:1626:7: error: unknown token in expression pop %r8 ^ jitc_mmu.S:1627:7: error: unknown token in expression pop %rdi ^ jitc_mmu.S:1628:7: error: unknown token in expression pop %rbx ^ jitc_mmu.S:1629:7: error: unknown token in expression pop %rcx ^ jitc_mmu.S:1630:7: error: unknown token in expression pop %rax ^ jitc_mmu.S:1632:7: error: unknown token in expression dec %r8d ^ jitc_mmu.S:1633:7: error: unknown token in expression inc %eax ^ jitc_mmu.S:1634:7: error: unknown token in expression dec %ecx ^ jitc_mmu.S:1635:2: error: invalid instruction mnemonic 'jnz' jnz 1b ~^~~~~~~ jitc_mmu.S:1637:5: error: unknown token in expression or %r8d, %r8d ^ jitc_mmu.S:1638:2: error: invalid instruction mnemonic 'jz' jz 5f ~^~~~~~ jitc_mmu.S:1640:8: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1641:8: error: unknown token in expression dec %r8d ^ jitc_mmu.S:1642:3: error: invalid instruction mnemonic 'jnz' jnz 2b ~~^~~~~~~ jitc_mmu.S:1645:7: error: unknown token in expression mov [%rdi+gpr+4*%rbx], %edx ^ jitc_mmu.S:1649:7: error: unknown token in expression push %rdx ^ jitc_mmu.S:1650:6: error: unknown token in expression mov %edi, %eax ^ jitc_mmu.S:1651:6: error: unknown token in expression mov %esi, 1 ^ jitc_mmu.S:1653:6: error: unknown token in expression pop %rdx ^ jitc_mmu.S:1654:6: error: unknown token in expression shl %edx, 8 ^ jitc_mmu.S:1655:6: error: unknown token in expression mov %dl, %al ^ 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 ^ :6:7: error: unknown token in expression 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:1668:2: error: invalid instruction mnemonic 'jc' jc 1f ~^~~~~~ jitc_mmu.S:1669:6: error: unknown token in expression sub %eax, [gMemory] ^ jitc_mmu.S:1672:6: error: unknown token in expression mov %rdi, [%rdi+jitc] ^ jitc_mmu.S:1673:6: error: unknown token in expression mov %rcx, [%rdi+clientPages] ^ jitc_mmu.S:1674:6: error: unknown token in expression shr %eax, 12 ^ jitc_mmu.S:1675:17: error: unknown token in expression cmp qword ptr [%rcx+%rax*8], 0 ^ jitc_mmu.S:1676:2: error: invalid instruction mnemonic 'jnz' jnz 2f ~^~~~~~~ jitc_mmu.S:1681:6: error: unknown token in expression 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[4]: Leaving directory `/«PKGBUILDDIR»/src/cpu' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/«PKGBUILDDIR»/src' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/«PKGBUILDDIR»' make[1]: *** [all] Error 2 make[1]: Leaving directory `/«PKGBUILDDIR»' dh_auto_build: make -j1 returned exit code 2 make: *** [build-arch] Error 2 dpkg-buildpackage: error: debian/rules build-arch gave error exit status 2 ──────────────────────────────────────────────────────────────────────────────── Build finished at 20130202-0326 Finished ──────── E: Build failure (dpkg-buildpackage died) ┌──────────────────────────────────────────────────────────────────────────────┐ │ Cleanup │ └──────────────────────────────────────────────────────────────────────────────┘ Purging /«BUILDDIR» Not cleaning session: cloned chroot in use ┌──────────────────────────────────────────────────────────────────────────────┐ │ Summary │ └──────────────────────────────────────────────────────────────────────────────┘ Architecture: amd64 Build-Space: 8804 Build-Time: 23 Distribution: unstable Fail-Stage: build Install-Time: 21 Job: pearpc_0.5.dfsg-2 Package: pearpc Package-Time: 69 Source-Version: 0.5.dfsg-2 Space: 8804 Status: attempted Version: 0.5.dfsg-2 ──────────────────────────────────────────────────────────────────────────────── Finished at 20130202-0326 Build needed 00:01:09, 8804k disc space DC-Status: Failed 70.190617s