{"diffoscope-json-version": 1, "source1": "/srv/reproducible-results/rbuild-debian/r-b-build.oquL2duw/b1/3d-ascii-viewer-c_1.4.0+git20240503+ds-2_armhf.changes", "source2": "/srv/reproducible-results/rbuild-debian/r-b-build.oquL2duw/b2/3d-ascii-viewer-c_1.4.0+git20240503+ds-2_armhf.changes", "unified_diff": null, "details": [{"source1": "Files", "source2": "Files", "unified_diff": "@@ -1,3 +1,3 @@\n \n- 3c55b86de24ae5fd0e30405b40f8a610 41112 debug optional 3d-ascii-viewer-dbgsym_1.4.0+git20240503+ds-2_armhf.deb\n- 229b2a799aa3160e8f3d18ffb596d354 18832 graphics optional 3d-ascii-viewer_1.4.0+git20240503+ds-2_armhf.deb\n+ a326f7414de92531b61534e5b6eabe58 41068 debug optional 3d-ascii-viewer-dbgsym_1.4.0+git20240503+ds-2_armhf.deb\n+ 4a7cfe421d85e780589353801871161c 18824 graphics optional 3d-ascii-viewer_1.4.0+git20240503+ds-2_armhf.deb\n"}, {"source1": "3d-ascii-viewer_1.4.0+git20240503+ds-2_armhf.deb", "source2": "3d-ascii-viewer_1.4.0+git20240503+ds-2_armhf.deb", "unified_diff": null, "details": [{"source1": "file list", "source2": "file list", "unified_diff": "@@ -1,3 +1,3 @@\n -rw-r--r-- 0 0 0 4 2025-02-19 16:54:01.000000 debian-binary\n--rw-r--r-- 0 0 0 756 2025-02-19 16:54:01.000000 control.tar.xz\n--rw-r--r-- 0 0 0 17884 2025-02-19 16:54:01.000000 data.tar.xz\n+-rw-r--r-- 0 0 0 752 2025-02-19 16:54:01.000000 control.tar.xz\n+-rw-r--r-- 0 0 0 17880 2025-02-19 16:54:01.000000 data.tar.xz\n"}, {"source1": "control.tar.xz", "source2": "control.tar.xz", "unified_diff": null, "details": [{"source1": "control.tar", "source2": "control.tar", "unified_diff": null, "details": [{"source1": "./md5sums", "source2": "./md5sums", "unified_diff": null, "details": [{"source1": "./md5sums", "source2": "./md5sums", "comments": ["Files differ"], "unified_diff": null}]}]}]}, {"source1": "data.tar.xz", "source2": "data.tar.xz", "unified_diff": null, "details": [{"source1": "data.tar", "source2": "data.tar", "unified_diff": null, "details": [{"source1": "./usr/bin/3d-ascii-viewer", "source2": "./usr/bin/3d-ascii-viewer", "comments": ["File has been modified after NT_GNU_BUILD_ID has been applied."], "unified_diff": null, "details": [{"source1": "readelf --wide --notes {}", "source2": "readelf --wide --notes {}", "unified_diff": "@@ -1,8 +1,8 @@\n \n Displaying notes found in: .note.gnu.build-id\n Owner Data size \tDescription\n- GNU 0x00000014\tNT_GNU_BUILD_ID (unique build ID bitstring)\t Build ID: 9f4e091f62523f04215697b38ad6074be4b1449a\n+ GNU 0x00000014\tNT_GNU_BUILD_ID (unique build ID bitstring)\t Build ID: 2fb35d08448a1d4da20d8ac3daa2d4bba56e8120\n \n Displaying notes found in: .note.ABI-tag\n Owner Data size \tDescription\n GNU 0x00000010\tNT_GNU_ABI_TAG (ABI version tag)\t OS: Linux, ABI: 3.2.0\n"}, {"source1": "strings --all --bytes=8 {}", "source2": "strings --all --bytes=8 {}", "unified_diff": "@@ -1,8 +1,8 @@\n-/lib/ld-linux-armhf.so.3\n+ /lib/ld-linux-armhf.so.3\n _ITM_deregisterTMCloneTable\n __gmon_start__\n _ITM_registerTMCloneTable\n COLOR_PAIRS\n wattr_on\n can_change_color\n init_color\n@@ -37,44 +37,18 @@\n pH$\"lKxD\n WI2FQKyD\n pixels\n-ERROR: Memory allocation failure.\n-[38;2;%d;%d;%dm%c\n-src/model.c\n-*delim != '\\0'\n-WARN: Invalid vertex index %d.\n-0 <= axis1 && axis1 <= 2\n-0 <= axis2 && axis2 <= 2\n-0 <= axis3 && axis3 <= 2\n-ERROR: failed to load file \"%s\".\n-ERROR: invalid \"v\" instruction.\n-ERROR: invalid \"f\" instruction.\n-ERROR: Memory allocation failure for MTL file name.\n-NOTE: Reading \"%s\".\n-WARN: failed to load file \"%s\".\n-ERROR: Material name too long.\n-WARN: Expected newmtl before \"%s\" instruction.\n-WARN: invalid \"%s\" instruction.\n-ERROR: invalid \"vertex\" instruction.\n-ERROR: Failed to read facet count.\n-ERROR: Failed to read facet data.\n-WARN: imported facet count does not match expected facet count.\n-src/triangularization.c\n-n2 == n - 1\n-n1 + n2 == n + 2\n+.HCF4\"xD\n+SF\"F1F8F\n Usage: %s [OPTION...] INPUT_FILE\n an OBJ 3D model format viewer for the terminal\n 3d-ascii-viewer\n %s -- %s\n -w Output width in characters\n -h Output height in characters\n -d Stop the program after this many seconds.\n@@ -121,19 +95,45 @@\n ERROR: Could not read model faces.\n ERROR: Terminal does not support colors.\n ERROR: Terminal does not support changing colors.\n WARN: Terminal doesn't support enough colors for all materials.\n zo:%4.0f\n az: %3.0f\n al: %3.0f\n-surface_clear\n+src/model.c\n+*delim != '\\0'\n+ERROR: Memory allocation failure.\n+WARN: Invalid vertex index %d.\n+0 <= axis1 && axis1 <= 2\n+0 <= axis2 && axis2 <= 2\n+0 <= axis3 && axis3 <= 2\n+ERROR: failed to load file \"%s\".\n+ERROR: invalid \"v\" instruction.\n+ERROR: invalid \"f\" instruction.\n+ERROR: Memory allocation failure for MTL file name.\n+NOTE: Reading \"%s\".\n+WARN: failed to load file \"%s\".\n+ERROR: Material name too long.\n+WARN: Expected newmtl before \"%s\" instruction.\n+WARN: invalid \"%s\" instruction.\n+ERROR: invalid \"vertex\" instruction.\n+ERROR: Failed to read facet count.\n+ERROR: Failed to read facet data.\n+WARN: imported facet count does not match expected facet count.\n+src/triangularization.c\n+n2 == n - 1\n+n1 + n2 == n + 2\n+src/surface.c\n+surface->pixels\n+[38;2;%d;%d;%dm%c\n str_chop\n model_change_orientation\n triangularize_recurse\n triangularize\n+surface_clear\n .shstrtab\n .note.gnu.build-id\n .gnu.hash\n .gnu.version\n .gnu.version_r\n .rel.dyn\n .rel.plt\n"}, {"source1": "objdump --line-numbers --disassemble --demangle --reloc --no-show-raw-insn --section=.text {}", "source2": "objdump --line-numbers --disassemble --demangle --reloc --no-show-raw-insn --section=.text {}", "unified_diff": "@@ -1,27 +1,28 @@\n \n \n \n Disassembly of section .text:\n \n 00001020 <.text>:\n-surface_clear.part.0():\n+surface_clear():\n ./src/surface.c:90\n \tvst3.8\t{d27,d29,d31}, [pc], r8\n \tbl\tfeb5822c <__cxa_finalize@plt+0xfeb5721c>\n \t\t\t@ instruction: 0xf8cc0c0c\n \tblmi\t105014 <__cxa_finalize@plt+0x104004>\n ./src/surface.c:93 (discriminator 1)\n \tstmdbmi\tr4, {r0, r2, r3, r4, r6, r9, sp}\n \tldrbtmi\tr4, [fp], #-2052\t@ 0xfffff7fc\n \tldrbtmi\tr4, [r8], #-1145\t@ 0xfffffb87\n \tmcr\t7, 7, pc, cr10, cr15, {7}\t@ \n-\tandeq\tr4, r0, r6, ror #24\n-\tandeq\tr3, r0, r0, lsl #31\n-\tandeq\tr3, r0, lr, lsl #31\n+\t\t\t@ instruction: 0x00004cb6\n+\tandeq\tr4, r0, r0, lsr #24\n+\tandeq\tr4, r0, lr, lsr #24\n+surface_clear.part.0():\n \tandeq\tr0, r0, r0\n main():\n ./src/viewer.c:536\n \tsvcmi\t0x00f0e92d\n \tstcpl\t4, cr15, [r0], {79}\t@ 0x4f\n \tblhi\t2bc514 <__cxa_finalize@plt+0x2bb504>\n \t\t\t@ instruction: 0x0c0cebad\n@@ -34,28 +35,24 @@\n \tldrbtmi\tr0, [r8], #-3841\t@ 0xfffff0ff\n ./src/viewer.c:536\n \tldmpl\tr3, {r2, r3, ip, pc}^\n \ttstls\tpc, #1769472\t@ 0x1b0000\n \tmovweq\tpc, #79\t@ 0x4f\t@ \n ./src/viewer.c:537\n \tstrbhi\tpc, [r4], -r0\t@ \n-parse_arguments():\n ./src/viewer.c:104 (discriminator 1)\n \tldrbthi\tpc, [r6], #832\t@ 0x340\t@ \n-main():\n ./src/viewer.c:541\n \tbls\tfecbc810 <__cxa_finalize@plt+0xfecbb800>\n \tbmi\tfee09c98 <__cxa_finalize@plt+0xfee08c88>\n \tldc\t6, cr4, [pc, #112]\t@ 110c <__cxa_finalize@plt+0xfc>\n ./src/viewer.c:555\n \t\t\t@ instruction: 0xf10b8ab1\n-parse_arguments():\n ./src/viewer.c:157\n \tldrbtmi\tr3, [sl], #-2815\t@ 0xfffff501\n-main():\n ./src/viewer.c:541\n \tbge\t1a7cb68 <__cxa_finalize@plt+0x1a7bb58>\n ./src/viewer.c:551\n \tcdp\t2, 15, cr9, cr0, cr8, {0}\n ./src/viewer.c:541\n \tbmi\tfece3a54 <__cxa_finalize@plt+0xfece2a44>\n ./src/viewer.c:557\n@@ -73,15 +70,14 @@\n \ttstls\tr5, #469762048\t@ 0x1c000000\n \tmovwls\tr9, #62224\t@ 0xf310\n \ttstcc\tr2, #3358720\t@ 0x334000\n \tmovwls\tr9, #37652\t@ 0x9314\n \tmovwls\tr9, #41751\t@ 0xa317\n \tandls\tr9, r6, #335544320\t@ 0x14000000\n \t\t\t@ instruction: 0xf8589304\n-parse_arguments():\n ./src/viewer.c:106\n \tadceq\tr6, pc, r5, lsr #32\n \tmulls\tr0, r6, r8\n \tsvceq\t0x002df1b9\n \tldmdavc\tr1!, {r1, r2, r8, ip, lr, pc}^\n \ttstle\tr3, pc, lsr r9\n \tstmdbcs\tr0, {r0, r4, r5, r7, fp, ip, sp, lr}\n@@ -206,18 +202,17 @@\n \tstrcc\tr8, [r1, #-1059]\t@ 0xfffffbdd\n ./src/viewer.c:104 (discriminator 1)\n \t\t\t@ instruction: 0xf73f45ab\n \tstmdbls\tfp, {r1, r2, r6, r8, r9, sl, fp, sp, pc}\n ./src/viewer.c:300\n \t\t\t@ instruction: 0xf0002900\n \tldcge\t4, cr8, [sp, #-60]\t@ 0xffffffc4\n-main():\n ./src/viewer.c:575\n-\t\t\t@ instruction: 0xf0034628\n-\t\t\t@ instruction: 0xf89dfb01\n+\t\t\t@ instruction: 0xf0014628\n+\t\t\t@ instruction: 0xf89dfa8d\n ./src/viewer.c:577\n \tblcs\td43c <__cxa_finalize@plt+0xc42c>\n \tldrbhi\tpc, [r2], #0\t@ \n ./src/viewer.c:582\n \tvpmin.s8\td25, d6, d13\n \tvqdmlal.s\tq9, d0, d3[7]\n \taddsmi\tr0, sl, #-1476395007\t@ 0xa8000001\n@@ -229,31 +224,31 @@\n ./src/viewer.c:588 (discriminator 1)\n \tldrhi\tpc, [sp, #-64]!\t@ 0xffffffc0\n ./src/viewer.c:590\n \tblcs\t27eb0 <__cxa_finalize@plt+0x26ea0>\n \tsubhi\tpc, r0, #64\t@ 0x40\n ./src/viewer.c:594\n \t\t\t@ instruction: 0xf002980b\n-\tstrmi\tpc, [r0], pc, lsl #18\n+\tstrmi\tpc, [r0], fp, lsr #19\n ./src/viewer.c:594 (discriminator 1)\n \t\t\t@ instruction: 0xf0002800\n \t\t\t@ instruction: 0xf8d88253\n ./src/viewer.c:603\n \tblcs\td2ac <__cxa_finalize@plt+0xc29c>\n \tstrbhi\tpc, [r8, #-0]\t@ \n ./src/viewer.c:608\n \tldrdcc\tpc, [ip], -r8\n \t\t\t@ instruction: 0xf0002b00\n \tstrbmi\tr8, [r0], -r0, lsr #9\n ./src/viewer.c:613\n-\tstc2\t0, cr15, [r4], #-4\n+\tstc2l\t0, cr15, [r0], {1}\n ./src/viewer.c:616\n \tldmib\tsp, {r0, r1, r2, r3, r8, fp, ip, pc}^\n \tstrbmi\tr3, [r0], -sp, lsl #4\n-\tstc2\t0, cr15, [r6], {1}\n+\tstc2\t0, cr15, [r2, #-4]!\n ./src/viewer.c:617\n \tblcs\t27f10 <__cxa_finalize@plt+0x26f00>\n \tandshi\tpc, lr, #64\t@ 0x40\n ./src/viewer.c:621\n \tblcs\t27f2c <__cxa_finalize@plt+0x26f1c>\n \tandshi\tpc, r6, #64\t@ 0x40\n ./src/viewer.c:625\n@@ -267,15 +262,15 @@\n \tmvnshi\tpc, r0, asr #32\n ./src/viewer.c:634\n \tmcr\t7, 2, pc, cr0, cr15, {7}\t@ \n ./src/viewer.c:635\n \tvmov.f64\td9, #10\t@ 0x40500000 3.250\n \tbls\t103cac <__cxa_finalize@plt+0x102c9c>\n \tstrbmi\tr4, [r0], -r1, lsr #12\n-\tcdp2\t0, 7, cr15, cr4, cr2, {0}\n+\tcdp2\t0, 0, cr15, cr0, cr0, {0}\n \t\t\t@ instruction: 0xf7ff4606\n ./src/viewer.c:636\n \tmcrcs\t14, 0, lr, cr0, cr8, {0}\n ./src/viewer.c:637\n \tandshi\tpc, ip, #0\n ./src/viewer.c:640\n \tblcs\t27f34 <__cxa_finalize@plt+0x26f24>\n@@ -287,15 +282,14 @@\n \t\t\t@ instruction: 0xf7ff8512\n ./src/viewer.c:648\n \tstmdacs\tr0, {r5, r6, r7, r8, sl, fp, sp, lr, pc}\n ./src/viewer.c:648 (discriminator 1)\n \tldrbhi\tpc, [pc], #0\t@ 1330 <__cxa_finalize@plt+0x320>\t@ \n ./src/viewer.c:654\n \tmcr\t7, 1, pc, cr8, cr15, {7}\t@ \n-terminal_init_colors():\n ./src/viewer.c:362 (discriminator 1)\n \t\t\t@ instruction: 0x3018f8d8\n \t\t\t@ instruction: 0xf0002b00\n \tblmi\t6a15c0 <__cxa_finalize@plt+0x6a05b0>\n \tbls\t30af44 <__cxa_finalize@plt+0x309f34>\n ./src/viewer.c:379\n \tblpl\t15bdc5c <__cxa_finalize@plt+0x15bcc4c>\n@@ -309,26 +303,26 @@\n \tandeq\tr0, r0, r0\n \tsbcmi\tr0, r8, #0\n \tsvccc\t0x00e66666\n \tldrbtmi\tr0, [sl], #-0\n \tandeq\tlr, r1, r2, ror #28\n \tandeq\tr0, r0, r4, lsl r1\n \tandeq\tlr, r1, sl, asr lr\n-\tandeq\tr4, r0, r6, ror #16\n-\tandeq\tr4, r0, sl, lsl #17\n-\tandeq\tr4, r0, r4, lsl #18\n-\tstrdeq\tr4, [r0], -r8\n-\tandeq\tr4, r0, ip, ror #17\n-\tandeq\tr4, r0, r0, ror #17\n-\tldrdeq\tr4, [r0], -r4\t@ \n-\tandeq\tr4, r0, r8, asr #17\n-\tandeq\tr4, r0, sl, lsl #17\n+\tandeq\tr4, r0, r6, ror #9\n+\tandeq\tr4, r0, sl, lsl #10\n+\tandeq\tr4, r0, r4, lsl #11\n+\tandeq\tr4, r0, r8, ror r5\n+\tandeq\tr4, r0, ip, ror #10\n+\tandeq\tr4, r0, r0, ror #10\n+\tandeq\tr4, r0, r4, asr r5\n+\tandeq\tr4, r0, r8, asr #10\n+\tandeq\tr4, r0, sl, lsl #10\n \tandeq\tr0, r0, ip, lsl r1\n-\tandeq\tr4, r0, r2, asr r7\n-\tandeq\tr4, r0, r4, lsr #17\n+\tldrdeq\tr4, [r0], -r2\n+\tandeq\tr4, r0, r4, lsr #10\n \tandeq\tr0, r0, r0, lsr #2\n ./src/viewer.c:366 (discriminator 1)\n \t\t\t@ instruction: 0xf85a4bfb\n \tldmdavs\tfp, {r0, r1, ip, sp}\n \tble\t15d1e2c <__cxa_finalize@plt+0x15d0e1c>\n ./src/viewer.c:372\n \tldrdcc\tpc, [r0], -r8\t@ \n@@ -405,18 +399,17 @@\n \tblle\tfe851edc <__cxa_finalize@plt+0xfe850ecc>\n ./src/viewer.c:368\n \tsmlabtcs\tr1, sp, fp, r4\n \tstmiami\tsp, {r2, r3, r9, fp, ip, pc}^\n \tldmpl\tr3, {r0, r1, r9, sl, fp, ip, pc}^\n \tsubcs\tr4, r0, #120, 8\t@ 0x78000000\n \t\t\t@ instruction: 0xf7ff681b\n-\t\t\t@ instruction: 0xf003ed48\n-main():\n+\t\t\t@ instruction: 0xf001ed48\n ./src/viewer.c:660\n-\tblls\t47fb70 <__cxa_finalize@plt+0x47eb60>\n+\tblls\t47f9a0 <__cxa_finalize@plt+0x47e990>\n \ttstls\tfp, r3\n ./src/viewer.c:664\n \t\t\t@ instruction: 0xf0402b00\n \tblls\t5a1e0c <__cxa_finalize@plt+0x5a0dfc>\n ./src/viewer.c:674\n \t\t\t@ instruction: 0xf0002b00\n \t\t\t@ instruction: 0xf7ff8197\n@@ -448,34 +441,34 @@\n ./src/viewer.c:680\n \t\t\t@ instruction: 0xf7ff2101\n \t\t\t@ instruction: 0xf8ddec84\n ./src/viewer.c:687\n \tldmib\tsp, {r2, r3, r4, ip, sp, pc}^\n \tstrls\tsl, [r3], #-2312\t@ 0xfffff6f8\n ./src/viewer.c:691\n-\t\t\t@ instruction: 0xf0004630\n-\tcdp\t13, 6, cr15, cr9, cr1, {6}\n+\t\t\t@ instruction: 0xf0024630\n+\tmcr\t14, 3, pc, cr9, cr9, {1}\t@ \n ./src/viewer.c:694\n \tvmul.f32\ts0, s16, s20\n ./src/viewer.c:693\n \tldrbmi\tr0, [r3], -sl, lsl #21\n ./src/viewer.c:696\n \tbne\tabcf14 <__cxa_finalize@plt+0xabbf04>\n \tstrbmi\tr4, [r1], -sl, asr #12\n \tmcr\t6, 6, r4, cr0, cr0, {1}\n \t\t\t@ instruction: 0xf8cd0aa9\n \tcdp\t0, 8, cr11, cr0, cr0, {0}\n-\t\t\t@ instruction: 0xf0020a29\n-\tandcs\tpc, r0, #2800\t@ 0xaf0\n+\t\t\t@ instruction: 0xf0000a29\n+\tandcs\tpc, r0, #944\t@ 0x3b0\n ./src/viewer.c:700\n \t\t\t@ instruction: 0x46116838\n \tstc\t7, cr15, [r2, #-1020]\t@ 0xfffffc04\n ./src/viewer.c:701\n-\t\t\t@ instruction: 0xf0014630\n-\tstccs\t8, cr15, [r0, #-900]\t@ 0xfffffc7c\n+\t\t\t@ instruction: 0xf0034630\n+\t\t\t@ instruction: 0x2d00f959\n ./src/viewer.c:702\n \trsbhi\tpc, r3, #64\t@ 0x40\n ./src/viewer.c:711\n \t\t\t@ instruction: 0xf7ff6838\n \tldmdavs\tr8!, {r5, r7, sl, fp, sp, lr, pc}\n ./src/viewer.c:713\n \tldcl\t7, cr15, [ip, #-1020]\t@ 0xfffffc04\n@@ -527,15 +520,14 @@\n \tcdp\t15, 11, cr11, cr0, cr8, {6}\n \tvcmp.f32\ts16, s15\n ./src/viewer.c:753\n \tvsqrt.f32\ts17, s14\n \tsvclt\t0x0048fa10\n \tbhi\t11fd078 <__cxa_finalize@plt+0x11fc068>\n \t\t\t@ instruction: 0xf1b9e792\n-parse_arguments():\n ./src/viewer.c:132\n \t\t\t@ instruction: 0xf47f0f2d\n \tldmdavc\tr1!, {r0, r3, r5, r7, r8, sl, fp, sp, pc}^\n \t\t\t@ instruction: 0xd1222966\n \tbllt\t5f890 <__cxa_finalize@plt+0x5e880>\n ./src/viewer.c:134\n \tvorr.i32\tq2, #327680\t@ 0x00050000\n@@ -633,44 +625,43 @@\n \t\t\t@ instruction: 0xf47f2a73\n \tldmvc\tr2!, {r0, r3, r4, r8, sl, fp, sp, pc}\n ./src/viewer.c:177 (discriminator 1)\n \t\t\t@ instruction: 0xf47f2a00\n \tmovwcs\tsl, #7445\t@ 0x1d15\n ./src/viewer.c:179\n \tstr\tr9, [lr, #778]!\t@ 0x30a\n-main():\n ./src/viewer.c:630\n \t\t\t@ instruction: 0xf0014640\n-\tldrb\tpc, [sp, #2841]!\t@ 0xb19\t@ \n+\tldrb\tpc, [sp, #2997]!\t@ 0xbb5\t@ \n ./src/viewer.c:628\n \t\t\t@ instruction: 0xf0014640\n-\tldrb\tpc, [r5, #2809]!\t@ 0xaf9\t@ \n+\tldrb\tpc, [r5, #2965]!\t@ 0xb95\t@ \n ./src/viewer.c:626\n \t\t\t@ instruction: 0xf0014640\n-\tstrb\tpc, [sp, #2775]!\t@ 0xad7\t@ \n+\tstrb\tpc, [sp, #2931]!\t@ 0xb73\t@ \n ./src/viewer.c:622\n \t\t\t@ instruction: 0xf0014640\n-\tstrb\tpc, [r5, #2543]!\t@ 0x9ef\t@ \n+\tstrb\tpc, [r5, #2699]!\t@ 0xa8b\t@ \n ./src/viewer.c:618\n \t\t\t@ instruction: 0xf0014640\n-\tldrb\tpc, [sp, #2539]\t@ 0x9eb\t@ \n+\tldrb\tpc, [sp, #2695]\t@ 0xa87\t@ \n ./src/viewer.c:592\n \ttstcs\tr1, r1, lsr #22\n \tstmdami\tr6!, {r2, r3, r9, fp, ip, pc}\n \tldrbtmi\tr5, [r8], #-2259\t@ 0xfffff72d\n \tldmdavs\tfp, {r1, r2, r3, r5, r9, sp}\n \tbl\tffc3f728 <__cxa_finalize@plt+0xffc3e718>\n \t\t\t@ instruction: 0x4630e5b4\n ./src/viewer.c:793\n-\tstc2l\t0, cr15, [ip], {0}\n+\tstc2l\t0, cr15, [r4, #-8]\n ./src/viewer.c:794\n \tvmov.f64\td9, #10\t@ 0x40500000 3.250\n \tbls\t1040e8 <__cxa_finalize@plt+0x1030d8>\n \tstrbmi\tr9, [r0], -pc, lsl #18\n-\tmrrc2\t0, 0, pc, r6, cr2\t@ \n+\tblx\tff8bd746 <__cxa_finalize@plt+0xff8bc736>\n ./src/viewer.c:795\n \tstmdacs\tr0, {r1, r2, r9, sl, lr}\n \tsbcshi\tpc, r0, r0, asr #32\n ./src/viewer.c:768\n \tbmi\t6c9754 <__cxa_finalize@plt+0x6c8744>\n ./src/viewer.c:814\n \tldrbtmi\tr4, [sl], #-2843\t@ 0xfffff4e5\n@@ -679,34 +670,34 @@\n \tmovweq\tpc, #79\t@ 0x4f\t@ \n \trscshi\tpc, sl, #64\t@ 0x40\n \tldc\t0, cr11, [sp], #132\t@ 0x84\n \tpop\t{r1, r3, r8, r9, fp, pc}\n \tstmdals\tfp, {r4, r5, r6, r7, r8, r9, sl, fp, pc}\n ./src/viewer.c:584\n \t\t\t@ instruction: 0xf0019907\n-\tstrmi\tpc, [r0], fp, lsl #22\n+\tstrmi\tpc, [r0], r7, lsr #23\n ./src/viewer.c:584 (discriminator 1)\n \trscle\tr2, r7, r0, lsl #16\n ./src/viewer.c:586\n-\tblx\tff53d784 <__cxa_finalize@plt+0xff53c774>\n+\tblx\t1c3d786 <__cxa_finalize@plt+0x1c3c776>\n \tsvclt\t0x0000e591\n \tandeq\tr0, r0, r0\n \tsbcmi\tr0, r8, #0\n \tldrdmi\tr0, [r9], #-251\t@ 0xffffff05\n \tteqmi\tr4, #0\n \t\t\t@ instruction: 0x43b40000\n \tldrbtmi\tr0, [sl], #-0\n \tandeq\tr0, r0, r0, lsl #2\n \tandeq\tr0, r0, ip, lsl r1\n-\tandeq\tr4, r0, r4, asr #15\n+\tandeq\tr4, r0, r4, asr #8\n \tandeq\tr0, r0, r0, lsl r1\n-\tandeq\tr4, r0, r6, ror r3\n-\tandeq\tr4, r0, r0, lsr #6\n-\tandeq\tr4, r0, lr, lsl #6\n-\tandeq\tr4, r0, sl, lsl #8\n+\tstrdeq\tr3, [r0], -r6\n+\tandeq\tr3, r0, r0, lsr #31\n+\tandeq\tr3, r0, lr, lsl #31\n+\tandeq\tr4, r0, sl, lsl #1\n \tandeq\tlr, r1, r2, lsl #15\n \tandeq\tr0, r0, r4, lsl r1\n ./src/viewer.c:659\n \tvmov.f64\td9, #86\t@ 0x3eb00000 0.3437500\n \tvldr\td9, [pc]\t@ 17cc <__cxa_finalize@plt+0x7bc>\n ./src/viewer.c:771\n \t\t\t@ instruction: 0xf503abb8\n@@ -752,15 +743,15 @@\n \tcdp\t15, 11, cr11, cr0, cr8, {0}\n \tand\tr9, r2, r7, asr #22\n ./src/viewer.c:805\n \tldrmi\tr3, [sp], -r1, lsl #8\n ./src/viewer.c:768\n \t\t\t@ instruction: 0x46304691\n ./src/viewer.c:769\n-\tldc2\t0, cr15, [r0], {-0}\n+\tstc2\t0, cr15, [r8], {2}\n ./src/viewer.c:771\n \t\t\t@ instruction: 0x46594650\n \tblx\t3bd85e <__cxa_finalize@plt+0x3bc84e>\n \tbleq\t5bc958 <__cxa_finalize@plt+0x5bb948>\n \tblvc\t2bd270 <__cxa_finalize@plt+0x2bc260>\n \tbmi\tfe43d074 <__cxa_finalize@plt+0xfe43c064>\n \tblvs\tff9bd340 <__cxa_finalize@plt+0xff9bc330>\n@@ -786,21 +777,21 @@\n \tmovwls\tr4, #1584\t@ 0x630\n \tandcc\tlr, r8, #3620864\t@ 0x374000\n ./src/viewer.c:776 (discriminator 1)\n \tbvs\tff1bd378 <__cxa_finalize@plt+0xff1bc368>\n \tblvc\t1bd13c <__cxa_finalize@plt+0x1bc12c>\n ./src/viewer.c:779\n \tbleq\tff1fd480 <__cxa_finalize@plt+0xff1fc470>\n-\tstc2l\t0, cr15, [r0], #8\n+\tstc2l\t0, cr15, [ip], #-0\n ./src/viewer.c:783\n \tldrmi\tr2, [r1], -r0, lsl #4\n \t\t\t@ instruction: 0xf7ff6838\n \t\t\t@ instruction: 0x4630eb34\n ./src/viewer.c:784\n-\t\t\t@ instruction: 0xff12f000\n+\t\t\t@ instruction: 0xff8af002\n ./src/viewer.c:785\n \t\t\t@ instruction: 0xf7ff6838\n \tblls\t17c410 <__cxa_finalize@plt+0x17b400>\n ./src/viewer.c:787\n \tblls\tede10 <__cxa_finalize@plt+0xece00>\n ./src/viewer.c:787 (discriminator 1)\n \tbne\tffaa7ce0 <__cxa_finalize@plt+0xffaa6cd0>\n@@ -812,15 +803,14 @@\n \t\t\t@ instruction: 0xf7ff6838\n \t\t\t@ instruction: 0xf5b0eb84\n ./src/viewer.c:791\n \t\t\t@ instruction: 0xf43f7fcd\n \tandcc\tsl, r1, r4, lsr #30\n ./src/viewer.c:798\n \tadcshi\tpc, pc, r0, asr #32\n-get_current_useconds():\n ./src/viewer.c:310\n \tldmdage\tr8, {r8, sp}\n \tb\tfe03f8f0 <__cxa_finalize@plt+0xfe03e8e0>\n ./src/viewer.c:311\n \tvpadd.i8\td25, d4, d8\n \tvqdmulh.s\td18, d0, d0[0]\n \tldmdbls\tr9, {r0, r1, r2, r3, sl, fp}\n@@ -828,15 +818,14 @@\n \tblx\tfe8e7972 <__cxa_finalize@plt+0xfe8e6962>\n ./src/viewer.c:311\n \tblx\t30e13a <__cxa_finalize@plt+0x30d12a>\n \tldmdbls\tsl, {r0, r9, sp}\n ./src/viewer.c:312\n \tbl\t1087a7c <__cxa_finalize@plt+0x1086a6c>\n \tbl\t682114 <__cxa_finalize@plt+0x681104>\n-tick():\n ./src/viewer.c:323\n \tbl\t12c2d2c <__cxa_finalize@plt+0x12c1d1c>\n \tadcmi\tr0, fp, #147456\t@ 0x24000\n ./src/viewer.c:324\n \ttsteq\tr9, r2, ror fp\n \tbne\tffb76354 <__cxa_finalize@plt+0xffb75344>\n ./src/viewer.c:326\n@@ -849,15 +838,14 @@\n ./src/viewer.c:329\n \t\t\t@ instruction: 0xf7ff4628\n \tblls\t33c328 <__cxa_finalize@plt+0x33b318>\n ./src/viewer.c:330\n \tstmiane\tsp!, {r1, r2, r3, r9, fp, ip, pc}^\n \tandeq\tlr, r2, #74752\t@ 0x12400\n \tldrb\tr4, [r7, -fp, lsr #12]!\n-main():\n ./src/viewer.c:667\n \tbvc\t17bd0cc <__cxa_finalize@plt+0x17bc0bc>\n ./src/viewer.c:669\n \tldc\t6, cr4, [pc, #260]\t@ 1a58 <__cxa_finalize@plt+0xa48>\n ./src/viewer.c:667\n \t\t\t@ instruction: 0x46300a5e\n ./src/viewer.c:668\n@@ -868,30 +856,28 @@\n \tbge\t9fd20c <__cxa_finalize@plt+0x9fc1fc>\n ./src/viewer.c:669\n \tvdiv.f64\td9, d8, d7\n \tmovwls\tr1, #2561\t@ 0xa01\n \tandcc\tlr, r8, #3620864\t@ 0x374000\n \tbeq\tfe03d474 <__cxa_finalize@plt+0xfe03c464>\n \tbeq\t3d3a0 <__cxa_finalize@plt+0x3c390>\n-\tldc2l\t0, cr15, [r6], #-8\n+\tstc2\t0, cr15, [r2], {-0}\n ./src/viewer.c:672\n \tbls\t3146dc <__cxa_finalize@plt+0x3136cc>\n \tldmpl\tr3, {r0, r4, r5, r9, sl, lr}^\n-\t\t\t@ instruction: 0xf0006818\n-\t\t\t@ instruction: 0x4630fe11\n+\t\t\t@ instruction: 0xf0026818\n+\tldrtmi\tpc, [r0], -r9, lsl #29\t@ \n ./src/viewer.c:812\n-\tblx\tfe7bd992 <__cxa_finalize@plt+0xfe7bc982>\n+\tldc2\t0, cr15, [r6], {2}\n ./src/viewer.c:813\n \t\t\t@ instruction: 0xf0014640\n-\tandcs\tpc, r0, r5, ror #19\n+\tandcs\tpc, r0, r1, lsl #21\n \tmovwcs\tlr, #5849\t@ 0x16d9\n-parse_arguments():\n ./src/viewer.c:183\n \tldrb\tr9, [r6], #-791\t@ 0xfffffce9\n-main():\n ./src/viewer.c:732\n \tandle\tr2, r3, sl, ror #24\n \tsvcvc\t0x0081f5b4\n \tbicshi\tpc, r8, r0, asr #32\n ./src/viewer.c:741\n \tbhi\tff03d584 <__cxa_finalize@plt+0xff03c574>\n ./src/viewer.c:733\n@@ -937,42 +923,41 @@\n ./src/viewer.c:709\n \tbvc\tff27d504 <__cxa_finalize@plt+0xff27c4f4>\n \tldrbtmi\tr4, [r8], #-2095\t@ 0xfffff7d1\n \tblcs\t5fcb7c <__cxa_finalize@plt+0x5fbb6c>\n \tstmib\tr4, {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}\n \t\t\t@ instruction: 0x4630e574\n ./src/viewer.c:717\n-\tblx\t123da3e <__cxa_finalize@plt+0x123ca2e>\n+\tblx\tff03da46 <__cxa_finalize@plt+0xff03ca36>\n ./src/viewer.c:718\n \tvmov.f64\td9, #10\t@ 0x40500000 3.250\n \tstrbmi\tr0, [r0], -fp, ror #20\n \tandne\tlr, r3, #3620864\t@ 0x374000\n-\tblx\tff4bda54 <__cxa_finalize@plt+0xff4bca44>\n+\tblx\t17bda4c <__cxa_finalize@plt+0x17bca3c>\n ./src/viewer.c:720\n \tstmdacs\tr0, {r1, r2, r9, sl, lr}\n \tmrcge\t4, 3, APSR_nzcv, cr12, cr15, {1}\n ./src/viewer.c:730\n \tandle\tr2, r3, ip, ror #24\n \tmovwne\tpc, #21056\t@ 0x5240\t@ \n \t\t\t@ instruction: 0xd19f429c\n ./src/viewer.c:731\n \tbvc\t3bd62c <__cxa_finalize@plt+0x3bc61c>\n \tbhi\tff9fd448 <__cxa_finalize@plt+0xff9fc438>\n ./src/viewer.c:738\n \t\t\t@ instruction: 0xf7ffe577\n ./src/viewer.c:808\n \tstr\tlr, [ip, r8, ror #20]\n-parse_arguments():\n ./src/viewer.c:187\n \tmovwls\tr2, #37633\t@ 0x9301\n \tbllt\tffaffa74 <__cxa_finalize@plt+0xffafea64>\n \tstr\tr9, [r0, #-3587]\t@ 0xfffff1fd\n ./src/viewer.c:108\n \tldrdeq\tpc, [r0], -r8\n-\tblx\t93da8e <__cxa_finalize@plt+0x93ca7e>\n+\tblx\tfec3da84 <__cxa_finalize@plt+0xfec3ca74>\n ./src/viewer.c:191\n \ttstls\tr4, #67108864\t@ 0x4000000\n \tbllt\tff87fa88 <__cxa_finalize@plt+0xff87ea78>\n ./src/viewer.c:195\n \ttstls\tr3, #67108864\t@ 0x4000000\n \tbllt\tff77fa90 <__cxa_finalize@plt+0xff77ea80>\n ./src/viewer.c:117\n@@ -992,18 +977,18 @@\n \tsbcmi\tr0, r8, #0\n \tldrdmi\tr0, [r9], #-251\t@ 0xffffff05\n \tteqmi\tr4, #0\n \t\t\t@ instruction: 0x43b40000\n \tteqgt\tr4, #0\n \tandeq\tr0, r0, r0, lsl r1\n \tandeq\tr0, r0, r8, lsl r1\n-\tandeq\tr4, r0, r6, lsl #5\n-\tandeq\tr4, r0, r8, ror r2\n-\tandeq\tr4, r0, sl, ror #4\n-\tandeq\tr3, r0, ip, lsr #29\n+\tandeq\tr3, r0, r6, lsl #30\n+\tstrdeq\tr3, [r0], -r8\n+\tandeq\tr3, r0, sl, ror #29\n+\tandeq\tr3, r0, ip, lsr #22\n \tandeq\tr0, r0, ip, lsl r1\n ./src/viewer.c:212\n \tldrtmi\tr4, [r0], -fp, lsr #19\n \t\t\t@ instruction: 0xf7ff4479\n \tstmdacs\tr0, {r1, r3, r4, r5, r6, r9, fp, sp, lr, pc}\n ./src/viewer.c:212 (discriminator 1)\n \tstmibmi\tr9!, {r2, r5, r6, ip, lr, pc}\n@@ -1093,15 +1078,14 @@\n \t\t\t@ instruction: 0xf7ff4479\n \tldmdami\tr8!, {r0, r5, r6, r7, r9, fp, ip, sp, pc}^\n ./src/viewer.c:270\n \t\t\t@ instruction: 0xf8584978\n \tstrmi\tr2, [r3], -r6\n \t\t\t@ instruction: 0xf7ff4479\n \tldmdami\tr6!, {r0, r3, r4, r6, r7, r9, fp, ip, sp, pc}^\n-main():\n ./src/viewer.c:610\n \tblmi\t1cca48c <__cxa_finalize@plt+0x1cc947c>\n \tstcls\t4, cr4, [ip], {120}\t@ 0x78\n ./src/viewer.c:651\n \tstmiapl\tr3!, {r0, r8, sp}^\n \t\t\t@ instruction: 0xf7ff681b\n \tandcs\tlr, r1, r0, lsl #19\n@@ -1128,15 +1112,14 @@\n \tbhi\tfe9fd624 <__cxa_finalize@plt+0xfe9fc614>\n ./src/viewer.c:744\n \tbvc\t15bd2c4 <__cxa_finalize@plt+0x15bc2b4>\n \tbhi\t19fd81c <__cxa_finalize@plt+0x19fc80c>\n \tblx\t43d814 <__cxa_finalize@plt+0x43c804>\n \tcdp\t15, 15, cr11, cr0, cr8, {5}\n \tldrt\tr8, [ip], r7, asr #20\n-parse_arguments():\n ./src/viewer.c:280\n \tldrtmi\tr4, [r0], -r0, ror #18\n \t\t\t@ instruction: 0xf7ff4479\n \torrslt\tlr, r8, r8, asr #19\n ./src/viewer.c:284\n \tbcs\tb5fd30 <__cxa_finalize@plt+0xb5ed20>\n \tblls\t2f5c94 <__cxa_finalize@plt+0x2f4c84>\n@@ -1190,31 +1173,27 @@\n ./src/viewer.c:221\n \ttstls\tr0, #15\n ./src/viewer.c:223\n \tmovwcs\tr9, #8973\t@ 0x230d\n ./src/viewer.c:222\n \t\t\t@ instruction: 0xf7ff930e\n \t\t\t@ instruction: 0xf7ffbab0\n-main():\n ./src/viewer.c:650\n \tldmdami\tip!, {r1, r2, r5, r8, fp, sp, lr, pc}\n ./src/viewer.c:651\n \teorscs\tr4, r2, #54272\t@ 0xd400\n \t\t\t@ instruction: 0xe7824478\n-parse_arguments():\n ./src/viewer.c:150\n \tblmi\tcd41e8 <__cxa_finalize@plt+0xcd31d8>\n \tandcs\tpc, r7, r8, asr r8\t@ \n \t\t\t@ instruction: 0xf7ff4479\n \tldmdami\tr8!, {r0, r4, r6, r9, fp, ip, sp, pc}\n-main():\n ./src/viewer.c:599\n \tblmi\tbca5c4 <__cxa_finalize@plt+0xbc95b4>\n \t\t\t@ instruction: 0xe7764478\n-output_description():\n ./src/viewer.c:68\n \tstmdavs\tr9, {r1, r2, r4, r5, fp, lr}\n \t\t\t@ instruction: 0xf7ff4478\n \tbmi\td7c088 <__cxa_finalize@plt+0xd7b078>\n ./src/viewer.c:69\n \tldmdami\tr6!, {r0, r2, r4, r5, r8, fp, lr}\n \tldrbtmi\tr4, [r9], #-1146\t@ 0xfffffb86\n@@ -1222,15 +1201,14 @@\n \tldmdami\tr4!, {r1, r4, r6, r7, fp, sp, lr, pc}\n ./src/viewer.c:70\n \tldrdne\tpc, [r0], -r8\n \t\t\t@ instruction: 0xf7ff4478\n \tldrbmi\tlr, [r8], -ip, asr #17\n ./src/viewer.c:72\n \tldmdb\tlr, {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}^\n-main():\n ./src/viewer.c:605\n \teorcs\tr4, r6, #48, 16\t@ 0x300000\n \tldrbtmi\tr4, [r8], #-2849\t@ 0xfffff4df\n \t\t\t@ instruction: 0xf7ffe75b\n ./src/viewer.c:644\n \tstmdami\tlr!, {r3, r4, r5, r6, r7, fp, sp, lr, pc}\n ./src/viewer.c:645\n@@ -1259,40 +1237,40 @@\n \tbvc\tfd50c <__cxa_finalize@plt+0xfc4fc>\n ./src/viewer.c:741\n \tblx\t43d958 <__cxa_finalize@plt+0x43c948>\n \tmrcge\t5, 0, APSR_nzcv, cr6, cr15, {3}\n \tsvclt\t0x0000e752\n \t\t\t@ instruction: 0x43b40000\n \tandeq\tr0, r0, r0\n-\tandeq\tr3, r0, r8, asr pc\n-\tandeq\tr3, r0, r2, asr pc\n-\tandeq\tr3, r0, sl, asr #30\n-\tandeq\tr3, r0, r2, asr #30\n-\tandeq\tr3, r0, sl, lsr pc\n-\tandeq\tr3, r0, r2, lsr pc\n-\tandeq\tr3, r0, sl, lsr #30\n-\tandeq\tr3, r0, lr, lsl pc\n-\tandeq\tr3, r0, r6, lsl pc\n-\tandeq\tr3, r0, ip, asr #29\n+\tldrdeq\tr3, [r0], -r8\n+\tldrdeq\tr3, [r0], -r2\n+\tandeq\tr3, r0, sl, asr #23\n+\tandeq\tr3, r0, r2, asr #23\n+\t\t\t@ instruction: 0x00003bba\n+\t\t\t@ instruction: 0x00003bb2\n+\tandeq\tr3, r0, sl, lsr #23\n+\tmuleq\tr0, lr, fp\n+\tmuleq\tr0, r6, fp\n+\tandeq\tr3, r0, ip, asr #22\n \tandeq\tr0, r0, ip, lsl r1\n-\tandeq\tr3, r0, r0, lsr #29\n-\t\t\t@ instruction: 0x00003fb4\n-\tandeq\tr3, r0, r2, ror #29\n-\tandeq\tr3, r0, r4, ror lr\n-\tandeq\tr3, r0, sl, asr lr\n-\tandeq\tr3, r0, ip, lsl #30\n-\tmuleq\tr0, r4, ip\n-\tandeq\tr3, r0, ip, asr #28\n-\tandeq\tr3, r0, r4, lsr #12\n-\tandeq\tr3, r0, ip, lsr r6\n-\tandeq\tr3, r0, sl, ror #12\n-\tandeq\tr3, r0, r8, ror r6\n-\tandeq\tr3, r0, r4, ror #23\n-\tandeq\tr3, r0, r6, asr #28\n-\tandeq\tr3, r0, r4, lsl #29\n+\tandeq\tr3, r0, r0, lsr #22\n+\tandeq\tr3, r0, r4, lsr ip\n+\tandeq\tr3, r0, r2, ror #22\n+\tstrdeq\tr3, [r0], -r4\n+\tldrdeq\tr3, [r0], -sl\n+\tandeq\tr3, r0, ip, lsl #23\n+\tandeq\tr3, r0, r4, lsl r9\n+\tandeq\tr3, r0, ip, asr #21\n+\tandeq\tr3, r0, r4, lsr #5\n+\t\t\t@ instruction: 0x000032bc\n+\tandeq\tr3, r0, sl, ror #5\n+\tstrdeq\tr3, [r0], -r8\n+\tandeq\tr3, r0, r4, ror #16\n+\tandeq\tr3, r0, r6, asr #21\n+\tandeq\tr3, r0, r4, lsl #22\n _start():\n \tbleq\t3df4c <__cxa_finalize@plt+0x3cf3c>\n \tcdpeq\t0, 0, cr15, cr0, cr15, {2}\n \tstrbtmi\tfp, [sl], -r2, lsl #24\n \tstrlt\tfp, [r1], #-1028\t@ 0xfffffbfc\n \t\t\t@ instruction: 0xa018f8df\n \tldrmi\tsl, [sl], #773\t@ 0x305\n@@ -1354,840 +1332,981 @@\n \tandeq\tlr, r1, lr, lsr r1\n \tandeq\tlr, r1, r8\n \tandeq\tr0, r0, r4, lsr #2\n \tandeq\tlr, r1, sl, lsr #2\n \tandeq\tlr, r1, lr, lsl r1\n frame_dummy():\n \tsvclt\t0x0000e7c4\n-triangle_normal():\n-./src/surface.c:25\n-\tbvs\t3d64c <__cxa_finalize@plt+0x3c63c>\n-./src/surface.c:22\n-\tldcl\t0, cr11, [r0, #544]\t@ 0x220\n-./src/surface.c:27\n-\tvldr\ts9, [r0, #8]\n-./src/surface.c:25\n-\tvldr\ts10, [r0, #12]\n-./src/surface.c:31\n-\tvldr\ts10, [r0, #32]\n-./src/surface.c:26\n-\tvldr\ts12, [r0, #4]\n-./src/surface.c:27\n-\tvadd.f32\ts9, s10, s10\n-./src/surface.c:25\n-\tvldr\ts10, [r0, #920]\t@ 0x398\n-./src/surface.c:30\n-\tvadd.f32\ts14, s10, s14\n-./src/surface.c:31\n-\tvldr\ts11, [r0, #400]\t@ 0x190\n-./src/surface.c:29\n-\tvadd.f32\ts14, s8, s12\n-./src/surface.c:27\n-\tvldr\ts9, [r0, #400]\t@ 0x190\n-./src/surface.c:26\n-\tvadd.f32\ts8, s14, s8\n-./src/surface.c:30\n-\tvsub.f32\ts15, s14, s12\n-./src/surface.c:29\n-\tvnmul.f32\ts15, s11, s13\n-./src/trigonometry.h:89\n-\tvadd.f32\ts13, s9, s10\n-./src/surface.c:26\n-\tvnmul.f32\ts8, s9, s12\n-./src/trigonometry.h:88\n-\tvnmls.f32\ts13, s8, s14\n-./src/trigonometry.h:89\n-\tvmul.f32\ts13, s8, s15\n-./src/trigonometry.h:90\n-\tvnmls.f32\ts14, s9, s15\n-./src/trigonometry.h:88\n-\tvnmls.f32\ts13, s11, s10\n-./src/trigonometry.h:90\n-\tvmul.f32\ts14, s13, s14\n-./src/trigonometry.h:12\n-\tvmla.f32\ts14, s13, s13\n-\tvmla.f32\ts14, s14, s12\n-\t\t\t@ instruction: 0xeef17aa7\n-\tvcmpe.f32\ts11, #0.0\n-./src/trigonometry.h:19\n-\tvneg.f32\ts11, s0\n-\tsvclt\t0x0017fa10\n-./src/trigonometry.h:22\n-\tbeq\t97d994 <__cxa_finalize@plt+0x97c984>\n-./src/trigonometry.h:20\n-\tbne\t1bd5fc <__cxa_finalize@plt+0x1bc5ec>\n-./src/trigonometry.h:23\n-\tbeq\tfe97da9c <__cxa_finalize@plt+0xfe97ca8c>\n-./src/trigonometry.h:24\n-\tbne\tfe97d9a4 <__cxa_finalize@plt+0xfe97c994>\n-./src/trigonometry.h:20\n-\tcdp\t15, 15, cr11, cr0, cr4, {0}\n-\tvmov.f32\ts0, s2\n-\tandlt\tr0, r8, r1, asr #20\n-./src/surface.c:36\n-\tsvclt\t0x00004770\n-\tandeq\tr0, r0, r0\n-surface_init():\n-./src/surface.c:64\n+create_surface():\n+./src/viewer.c:476\n \tmvnsmi\tlr, sp, lsr #18\n \tstcpl\t4, cr15, [r0], {79}\t@ 0x4f\n-\tblhi\tbd45c <__cxa_finalize@plt+0xbc44c>\n+\tblhi\tbd3c8 <__cxa_finalize@plt+0xbc3b8>\n \t\t\t@ instruction: 0x0c0cebad\n \tsvceq\t0x00e0f8cc\n-\tstrmi\tr4, [r7], -r9, lsr #28\n-./src/surface.c:67\n-\tmrc\t0, 7, r2, cr0, cr12, {0}\n-./src/surface.c:64\n-\tvmov.f32\ts16, s0\n-\tstrmi\tr8, [ip], -r0, ror #20\n-\t\t\t@ instruction: 0xf7fe447e\n-./src/surface.c:67\n-\t\t\t@ instruction: 0xb3b8efb6\n-./src/surface.c:78\n-\tbmi\t43d7e8 <__cxa_finalize@plt+0x43c7d8>\n-./src/surface.c:77\n-\tbvc\tfe43d7ec <__cxa_finalize@plt+0xfe43c7dc>\n-./src/surface.c:80\n-\t\t\t@ instruction: 0xf807fb04\n-\tcdp\t2, 15, cr2, cr8, cr12, {0}\n-./src/surface.c:78\n-\tvcvt.f32.u32\ts13, s14\n-./src/surface.c:77\n-\tstrmi\tr7, [r5], -r7, ror #20\n-./src/surface.c:74\n-\tstrmi\tlr, [r0, -r0, asr #19]\n-./src/surface.c:75\n-\tbhi\tbd6e8 <__cxa_finalize@plt+0xbc6d8>\n-./src/surface.c:80\n-\t\t\t@ instruction: 0xf408fb02\n-./src/surface.c:76\n-\tbhi\tfd5f0 <__cxa_finalize@plt+0xfc5e0>\n-./src/surface.c:77\n-\tbvc\tfe9fda14 <__cxa_finalize@plt+0xfe9fca04>\n-./src/surface.c:78\n-\tbvc\t9bdb18 <__cxa_finalize@plt+0x9bcb08>\n-./src/surface.c:80\n-\tstc\t6, cr4, [r5, #128]\t@ 0x80\n-./src/surface.c:77\n-\tvstr\ts15, [r5, #16]\n-./src/surface.c:78\n-\t\t\t@ instruction: 0xf7fe7a05\n-./src/surface.c:80\n-\t\t\t@ instruction: 0x4603ef96\n-./src/surface.c:80 (discriminator 1)\n-\tmovwlt\tr6, #33192\t@ 0x81a8\n-./src/surface.c:95 (discriminator 1)\n-\t\t\t@ instruction: 0xf04f1902\n-./src/surface.c:97\n-\tstrdcs\tr4, [r0], -pc\t@ \n-./src/surface.c:99\n-\tmvnscc\tpc, pc, asr #32\n-./src/surface.c:95 (discriminator 1)\n-\tsvceq\t0x0000f1b8\n-\ttstvc\tr8, r7\n-\t\t\t@ instruction: 0xf843330c\n-./src/surface.c:99\n-\t\t\t@ instruction: 0xf8431c04\n-./src/surface.c:97\n-\taddsmi\tip, r3, #12, 24\t@ 0xc00\n-./src/surface.c:95 (discriminator 1)\n-\tldc\t1, cr13, [sp], #988\t@ 0x3dc\n-./src/surface.c:88\n-\tstrtmi\tr8, [r8], -r2, lsl #22\n-\tldrhhi\tlr, [r0, #141]!\t@ 0x8d\n-./src/surface.c:69\n-\tblmi\t25405c <__cxa_finalize@plt+0x25304c>\n-\tldmpl\tr3!, {r3, r4, r5, r6, sl, lr}^\n-./src/surface.c:82\n-\ttstcs\tr1, r2, lsr #4\n-\t\t\t@ instruction: 0xf7fe681b\n-\tandcs\tlr, r1, r2, ror #30\n-./src/surface.c:83\n-\tsvc\t0x00d6f7fe\n-./src/surface.c:82\n-\tblmi\td4064 <__cxa_finalize@plt+0xd3054>\n-\t\t\t@ instruction: 0xe7f24478\n-\tandeq\tsp, r1, r4, lsl pc\n-\tandeq\tr2, r0, r0, lsr #31\n-\tandeq\tr0, r0, ip, lsl r1\n-\tandeq\tr2, r0, r8, lsl #31\n-surface_clear():\n-./src/surface.c:91\n+./src/viewer.c:463 (discriminator 1)\n+\tcdp\t8, 15, cr6, cr0, cr4, {0}\n+./src/viewer.c:476\n+\t\t\t@ instruction: 0xf8df8a40\n+\t\t\t@ instruction: 0x460de0b8\n+\t\t\t@ instruction: 0x461f4616\n+\tstccs\t4, cr4, [r0], {254}\t@ 0xfe\n+./src/viewer.c:463 (discriminator 1)\n+\tstmvs\tr0, {r1, r2, r3, r6, ip, lr, pc}\n+\tldc\t3, cr2, [pc, #48]\t@ 1f68 <__cxa_finalize@plt+0xf58>\n+./src/viewer.c:462\n+\tblx\te47de <__cxa_finalize@plt+0xe37ce>\n+\tldcl\t12, cr0, [r0, #16]\n+./src/viewer.c:465\n+\tandcc\tr7, ip, r2, lsl #20\n+\tbvc\tfd388 <__cxa_finalize@plt+0xfc378>\n+./src/viewer.c:467\n+\tbvc\tfe9fd8e8 <__cxa_finalize@plt+0xfe9fc8d8>\n+\tbvc\t1fd86c <__cxa_finalize@plt+0x1fc85c>\n+\tbvc\tff9fda18 <__cxa_finalize@plt+0xff9fca08>\n+./src/viewer.c:468\n+\tbvc\tff23da28 <__cxa_finalize@plt+0xff23ca18>\n+\tblx\t43db20 <__cxa_finalize@plt+0x43cb10>\n+\tcdp\t15, 11, cr11, cr0, cr8, {6}\n+\tstrmi\tr8, [r4, #2631]\t@ 0xa47\n+./src/viewer.c:463 (discriminator 1)\n+\tblmi\t7b6714 <__cxa_finalize@plt+0x7b5704>\n+./src/viewer.c:486\n+\tandhi\tpc, r3, lr, asr r8\t@ \n+\tldrdeq\tpc, [r0], -r8\n+\tstmda\tr6!, {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}\n+\t\t\t@ instruction: 0xf8d84604\n+./src/viewer.c:486 (discriminator 1)\n+\tcdpcs\t0, 0, cr0, cr0, cr0, {0}\n+./src/viewer.c:486\n+\tstrtmi\tfp, [r6], -r8, lsl #30\n+./src/viewer.c:486 (discriminator 1)\n+\tldmda\tr2, {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}\n+\tsvclt\t0x00082d00\n+\tldmiblt\tr7, {r0, r2, r9, sl, lr}\n+./src/viewer.c:500\n+\tbvs\tfe43d7ac <__cxa_finalize@plt+0xfe43c79c>\n+\tbpl\t43d7b0 <__cxa_finalize@plt+0x43c7a0>\n+\tbvc\tff9fdb78 <__cxa_finalize@plt+0xff9fcb68>\n+\tbvc\tff1fda7c <__cxa_finalize@plt+0xff1fca6c>\n+\tbvc\tfea3d93c <__cxa_finalize@plt+0xfea3c92c>\n+\tbvs\t9fdac0 <__cxa_finalize@plt+0x9fcab0>\n+./src/viewer.c:502\n+\tbvs\tff23db78 <__cxa_finalize@plt+0xff23cb68>\n+\tblx\t43db70 <__cxa_finalize@plt+0x43cb60>\n+\tvmov.f64\td13, #13\t@ 0x40680000 3.625\n+./src/viewer.c:504\n+\tvrintx.f32\ts17, s13\n+./src/viewer.c:505\n+\tvmov.f32\ts0, #0\t@ 0x40000000 2.0\n+./src/viewer.c:514\n+\tldrtmi\tr0, [r1], -r8, asr #20\n+./src/viewer.c:515\n+\tblhi\tbd2b4 <__cxa_finalize@plt+0xbc2a4>\n+./src/viewer.c:514\n+\tpop\t{r3, r5, r9, sl, lr}\n+./src/viewer.c:515\n+\t\t\t@ instruction: 0xf00241f0\n+./src/viewer.c:514\n+\tcdp\t8, 12, cr11, cr8, cr1, {3}\n+./src/viewer.c:510\n+\tldrb\tr0, [r2, r6, lsr #20]!\n+./src/viewer.c:462\n+\tbhi\t7d650 <__cxa_finalize@plt+0x7c640>\n+\tsvclt\t0x0000e7c7\n+\tandeq\tr0, r0, r0\n+\tandeq\tsp, r1, r8, lsr #31\n+\tandeq\tr0, r0, r0, lsl r1\n+output_usage.isra.0():\n+./src/viewer.c:26\n \tvst3.8\t{d27,d29,d31}, [pc], r8\n-\tbl\tfeb59270 <__cxa_finalize@plt+0xfeb58260>\n+\tbl\tfeb591ec <__cxa_finalize@plt+0xfeb581dc>\n \t\t\t@ instruction: 0xf8cc0c0c\n-\t\t\t@ instruction: 0xb1b80ff8\n-./src/surface.c:93\n-\tmvnslt\tr6, r3, lsl #19\n-./src/surface.c:95 (discriminator 1)\n-\tldrdcs\tlr, [r0, -r0]\n-\tvqdmulh.s\td15, d2, d1\n-\ttstcs\tip, sl, ror r1\n-./src/surface.c:97\n-\tldclmi\t0, cr15, [pc], #316\t@ 21c8 <__cxa_finalize@plt+0x11b8>\n-./src/surface.c:98\n-\tblx\t4a112 <__cxa_finalize@plt+0x49102>\n-\t\t\t@ instruction: 0xf04f3202\n-./src/surface.c:99\n-\t\t\t@ instruction: 0x711831ff\n-./src/surface.c:95 (discriminator 1)\n-\t\t\t@ instruction: 0xf843330c\n-./src/surface.c:99\n-\t\t\t@ instruction: 0xf8431c04\n-./src/surface.c:97\n-\taddsmi\tip, r3, #12, 24\t@ 0xc00\n-./src/surface.c:95 (discriminator 1)\n-\tstclt\t1, cr13, [r8, #-988]\t@ 0xfffffc24\n-./src/surface.c:92 (discriminator 1)\n-\tsubscs\tr4, ip, #5120\t@ 0x1400\n-\tstmdami\tr6, {r0, r2, r8, fp, lr}\n-\tldrbtmi\tr4, [r9], #-1147\t@ 0xfffffb85\n+\t\t\t@ instruction: 0x46010ff8\n+./src/viewer.c:28\n+\tldrbtmi\tr4, [r8], #-2116\t@ 0xfffff7bc\n+\tsvc\t0x006af7fe\n+./src/viewer.c:29\n+\tstmdbmi\tr4, {r0, r1, r6, r9, fp, lr}^\n+\tldrbtmi\tr4, [sl], #-2116\t@ 0xfffff7bc\n+\tldrbtmi\tr4, [r8], #-1145\t@ 0xfffffb87\n+\tsvc\t0x0062f7fe\n+./src/viewer.c:30\n+\t\t\t@ instruction: 0xf7fe200a\n+\tstmdami\tr1, {r1, r3, r4, r6, r7, r9, sl, fp, sp, lr, pc}^\n+./src/viewer.c:31\n \t\t\t@ instruction: 0xf7fe4478\n-\t\t\t@ instruction: 0xf7feeeb0\n-\tsvclt\t0x0000ffb3\n-\tstrdeq\tr3, [r0], -r0\n-\tandeq\tr2, r0, sl, lsl #30\n-\tandeq\tr2, r0, ip, asr #30\n-surface_free():\n-./src/surface.c:104\n-\tvst3.8\t{d27,d29,d31}, [pc :64], r0\n-\tbl\tfeb592d4 <__cxa_finalize@plt+0xfeb582c4>\n-\t\t\t@ instruction: 0xf8cc0c0c\n-\t\t\t@ instruction: 0x46040ff8\n-./src/surface.c:105\n-\t\t\t@ instruction: 0xf7fe6980\n-\t\t\t@ instruction: 0x4620eeb6\n-./src/surface.c:107\n-\t\t\t@ instruction: 0x4010e8bd\n-./src/surface.c:106\n-\tmcrlt\t7, 5, pc, cr14, cr14, {7}\t@ \n-surface_draw_triangle():\n-./src/surface.c:155\n-\tvst4.32\t{d27-d30}, [pc], r4\n-\tpush\t{r7, sl, fp, ip, lr}\n-\tvstr\tFPSCR_nzcvqc, [sp, #-448]!\t@ 0xfffffe40\n-\tbl\tfeb64d3c <__cxa_finalize@plt+0xfeb63d2c>\n-\t\t\t@ instruction: 0xf8cc0c0c\n-\tadclt\tr0, r5, r8, lsl #30\n-\tldcl\t12, cr10, [sp, #252]\t@ 0xfc\n-\tstm\tr4, {r1, r6, r9, fp, ip, sp, lr}\n-\tldcl\t0, cr0, [sp, #56]\t@ 0x38\n-\tvldr\ts12, [sp, #268]\t@ 0x10c\n-./src/surface.c:40\n-\tvldr\ts12, [sp, #280]\t@ 0x118\n-./src/surface.c:41\n-\tvldr\ts14, [sp, #276]\t@ 0x114\n-./src/surface.c:40\n-\tvldr\ts11, [sp, #252]\t@ 0xfc\n-./src/surface.c:41\n-\tvsub.f32\ts10, s12, s0\n-./src/surface.c:40\n-\tvsub.f32\ts12, s14, s13\n-./src/surface.c:41\n-\t\t\t@ instruction: 0xf8df7a67\n-./src/surface.c:155\n-\tmrc\t4, 3, r1, cr7, cr4, {3}\n-./src/surface.c:40\n-\t\t\t@ instruction: 0xf8df7ac5\n-./src/surface.c:155\n-\tmrc\t4, 3, r2, cr6, cr0, {3}\n-./src/surface.c:41\n-\tldrbtmi\tr6, [r9], #-2789\t@ 0xfffff51b\n-./src/surface.c:155\n-\tmsrcc\tCPSR_s, sp\t@ \n-\tmsrvs\tCPSR_f, sp\t@ \n-./src/surface.c:40\n-\tbvc\tfe1bdae4 <__cxa_finalize@plt+0xfe1bcad4>\n-./src/surface.c:155\n-\tcdp\t8, 2, cr5, cr7, cr10, {4}\n-./src/surface.c:41\n-\t\t\t@ instruction: 0xf0837a26\n-./src/surface.c:156 (discriminator 1)\n-\tldmdavs\tr2, {r0, r8, r9}\n-./src/surface.c:155\n-\t\t\t@ instruction: 0xf04f9223\n-\tsvcls\t0x004b0200\n-./src/surface.c:41\n-\tbvc\tff1fdd30 <__cxa_finalize@plt+0xff1fcd20>\n-\tblx\t43dd28 <__cxa_finalize@plt+0x43cd18>\n-./src/surface.c:156 (discriminator 1)\n-\tandcs\tfp, r1, #76, 30\t@ 0x130\n-\taddsmi\tr2, sl, #0, 4\n-\t\t\t@ instruction: 0xf8dfd013\n-./src/surface.c:155\n-\t\t\t@ instruction: 0xf8df2438\n-./src/surface.c:204\n-\tldrbtmi\tr3, [sl], #-1072\t@ 0xfffffbd0\n-\tldmdavs\tsl, {r0, r1, r4, r6, r7, fp, ip, lr}\n-\tsubsmi\tr9, sl, r3, lsr #22\n+\tstmdami\tr0, {r1, r3, r5, r7, r8, r9, sl, fp, sp, lr, pc}^\n+./src/viewer.c:32\n+\t\t\t@ instruction: 0xf7fe4478\n+\tldmdami\tpc!, {r1, r2, r5, r7, r8, r9, sl, fp, sp, lr, pc}\t@ \n+./src/viewer.c:33\n+\t\t\t@ instruction: 0xf7fe4478\n+\tldmdami\tlr!, {r1, r5, r7, r8, r9, sl, fp, sp, lr, pc}\n+./src/viewer.c:34\n+\t\t\t@ instruction: 0xf7fe4478\n+\tldmdami\tsp!, {r1, r2, r3, r4, r7, r8, r9, sl, fp, sp, lr, pc}\n+./src/viewer.c:35\n+\t\t\t@ instruction: 0xf7fe4478\n+\tldmdami\tip!, {r1, r3, r4, r7, r8, r9, sl, fp, sp, lr, pc}\n+./src/viewer.c:36\n+\t\t\t@ instruction: 0xf7fe4478\n+\tldmdami\tfp!, {r1, r2, r4, r7, r8, r9, sl, fp, sp, lr, pc}\n+./src/viewer.c:37\n+\t\t\t@ instruction: 0xf7fe4478\n+\tldmdami\tsl!, {r1, r4, r7, r8, r9, sl, fp, sp, lr, pc}\n+./src/viewer.c:38\n+\t\t\t@ instruction: 0xf7fe4478\n+\tldmdami\tr9!, {r1, r2, r3, r7, r8, r9, sl, fp, sp, lr, pc}\n+./src/viewer.c:39\n+\t\t\t@ instruction: 0xf7fe4478\n+\tldmdami\tr8!, {r1, r3, r7, r8, r9, sl, fp, sp, lr, pc}\n+./src/viewer.c:40\n+\t\t\t@ instruction: 0xf7fe4478\n+\tldmdami\tr7!, {r1, r2, r7, r8, r9, sl, fp, sp, lr, pc}\n+./src/viewer.c:41\n+\t\t\t@ instruction: 0xf7fe4478\n+\tldmdami\tr6!, {r1, r7, r8, r9, sl, fp, sp, lr, pc}\n+./src/viewer.c:42\n+\t\t\t@ instruction: 0xf7fe4478\n+\tldmdami\tr5!, {r1, r2, r3, r4, r5, r6, r8, r9, sl, fp, sp, lr, pc}\n+./src/viewer.c:43\n+\t\t\t@ instruction: 0xf7fe4478\n+\tldmdami\tr4!, {r1, r3, r4, r5, r6, r8, r9, sl, fp, sp, lr, pc}\n+./src/viewer.c:44\n+\t\t\t@ instruction: 0xf7fe4478\n+\tldmdami\tr3!, {r1, r2, r4, r5, r6, r8, r9, sl, fp, sp, lr, pc}\n+./src/viewer.c:45\n+\t\t\t@ instruction: 0xf7fe4478\n+\tldmdami\tr2!, {r1, r4, r5, r6, r8, r9, sl, fp, sp, lr, pc}\n+./src/viewer.c:46\n+\t\t\t@ instruction: 0xf7fe4478\n+\tldmdami\tr1!, {r1, r2, r3, r5, r6, r8, r9, sl, fp, sp, lr, pc}\n+./src/viewer.c:47\n+\t\t\t@ instruction: 0xf7fe4478\n+\tandcs\tlr, sl, sl, ror #30\n+./src/viewer.c:48\n+\tmrc\t7, 4, APSR_nzcv, cr2, cr14, {7}\n+./src/viewer.c:49\n+\tldrbtmi\tr4, [r8], #-2094\t@ 0xfffff7d2\n+\tsvc\t0x0062f7fe\n+./src/viewer.c:50\n+\tldrbtmi\tr4, [r8], #-2093\t@ 0xfffff7d3\n+\tsvc\t0x005ef7fe\n+./src/viewer.c:51\n+\t\t\t@ instruction: 0xf7fe200a\n+\tstmdami\tfp!, {r3, r7, r9, sl, fp, sp, lr, pc}\n+./src/viewer.c:52\n+\t\t\t@ instruction: 0xf7fe4478\n+\tstmdami\tsl!, {r3, r4, r6, r8, r9, sl, fp, sp, lr, pc}\n+./src/viewer.c:53\n+\t\t\t@ instruction: 0xf7fe4478\n+\tandcs\tlr, sl, r4, asr pc\n+./src/viewer.c:54\n+\tmrc\t7, 3, APSR_nzcv, cr12, cr14, {7}\n+./src/viewer.c:55\n+\tldrbtmi\tr4, [r8], #-2087\t@ 0xfffff7d9\n+\tsvc\t0x004cf7fe\n+./src/viewer.c:56\n+\tldrbtmi\tr4, [r8], #-2086\t@ 0xfffff7da\n+\tsvc\t0x0048f7fe\n+./src/viewer.c:57\n+\tldrbtmi\tr4, [r8], #-2085\t@ 0xfffff7db\n+\tsvc\t0x0044f7fe\n+./src/viewer.c:58\n+\tldrbtmi\tr4, [r8], #-2084\t@ 0xfffff7dc\n+\tsvc\t0x0040f7fe\n+./src/viewer.c:59\n+\t\t\t@ instruction: 0xf7fe200a\n+\tstmdami\tr2!, {r1, r3, r5, r6, r9, sl, fp, sp, lr, pc}\n+./src/viewer.c:60\n+\t\t\t@ instruction: 0xf7fe4478\n+\tandcs\tlr, sl, sl, lsr pc\n+./src/viewer.c:61\n+\tmcr\t7, 3, pc, cr2, cr14, {7}\t@ \n+./src/viewer.c:63\n+\t\t\t@ instruction: 0xf7fe2001\n+\tsvclt\t0x0000ef7c\n+\tandeq\tr2, r0, r6, asr #31\n+\tldrdeq\tr2, [r0], -lr\n+\tandeq\tr3, r0, ip\n+\tandeq\tr3, r0, sl, lsl r0\n+\tandeq\tr3, r0, r8, lsl r0\n+\tandeq\tr3, r0, r0, asr #32\n+\tandeq\tr3, r0, r8, rrx\n+\tandeq\tr3, r0, r0, lsr #1\n+\tandeq\tr3, r0, r0, asr #1\n+\tandeq\tr3, r0, r4, lsl #2\n+\tandeq\tr3, r0, ip, lsl r1\n+\tandeq\tr3, r0, r0, ror #2\n+\tandeq\tr3, r0, ip, ror r1\n+\tandeq\tr3, r0, r4, asr #3\n+\tandeq\tr3, r0, ip, ror #3\n+\tandeq\tr3, r0, r8, lsr #4\n+\tandeq\tr3, r0, ip, asr r2\n+\tandeq\tr3, r0, r0, lsl #5\n+\tandeq\tr3, r0, r8, lsr #5\n+\t\t\t@ instruction: 0x000032b8\n+\tldrdeq\tr3, [r0], -r4\n+\tstrdeq\tr3, [r0], -lr\n+\tandeq\tr3, r0, r2, lsr #6\n+\tandeq\tr3, r0, ip, asr r3\n+\tandeq\tr3, r0, r0, lsr #7\n+\tandeq\tr3, r0, sl, asr #7\n+\tstrdeq\tr3, [r0], -r2\n+\tandeq\tr3, r0, lr, lsl r4\n+\tandeq\tr3, r0, sl, asr #8\n+\tandeq\tr3, r0, ip, ror #8\n+surface_draw_model():\n+./src/viewer.c:404\n+\tsvcmi\t0x00f0e92d\n+\tstcpl\t4, cr15, [r0], {79}\t@ 0x4f\n+\tblhi\t43d640 <__cxa_finalize@plt+0x43c630>\n+\t\t\t@ instruction: 0x0c0cebad\n+\tcdpeq\t8, 5, cr15, cr8, cr12, {6}\n+\t\t\t@ instruction: 0x4615b0d1\n+\tbhi\t183dc5c <__cxa_finalize@plt+0x183cc4c>\n+\tstrmi\tr4, [r2], r9, lsl #13\n+\tandsls\tsl, r1, #425984\t@ 0x68000\n+\t\t\t@ instruction: 0xf89da81b\n+\tcdp\t1, 11, cr4, cr0, cr8, {5}\n+\tbmi\te68ab4 <__cxa_finalize@plt+0xe67aa4>\n+\t\t\t@ instruction: 0x461c9413\n+\tldrbtmi\tr9, [sl], #-786\t@ 0xfffffcee\n+\tldmpl\tr3, {r0, r1, r2, r4, r5, r8, r9, fp, lr}^\n+\tmovtls\tr6, #63515\t@ 0xf81b\n \tmovweq\tpc, #79\t@ 0x4f\t@ \n-\tandhi\tpc, r7, #64\t@ 0x40\n-\tldc\t0, cr11, [sp], #148\t@ 0x94\n-\tpop\t{r4, r8, r9, fp, pc}\n-\tstrdlt\tr4, [r4], -r0\n-\t\t\t@ instruction: 0x46a34770\n-./src/surface.c:159\n-\tstrtmi\tr4, [r0], -r5, lsl #12\n-\tldmdbeq\tip!, {r0, r2, r3, r8, ip, sp, lr, pc}\n-\tmrc2\t7, 5, pc, cr2, cr15, {7}\n-\tldm\tfp!, {r1, r2, r3, r6, r7, r9, sl, lr}\n-\tstrbmi\tr0, [ip], pc\n-\tandeq\tlr, pc, r9, lsr #17\n-./src/surface.c:47\n-\tbeq\t3e2f0 <__cxa_finalize@plt+0x3d2e0>\n-./src/surface.c:53\n-\tldmdaeq\tr0!, {r0, r2, r3, r8, ip, sp, lr, pc}\n-./src/surface.c:159\n-\tbeq\t27d7f0 <__cxa_finalize@plt+0x27c7e0>\n-\tbeq\t2bd8f4 <__cxa_finalize@plt+0x2bc8e4>\n-\t\t\t@ instruction: 0x000fe8bb\n-\tandeq\tlr, pc, r9, lsr #17\n-\tbne\t2fd800 <__cxa_finalize@plt+0x2fc7f0>\n-./src/surface.c:161\n-\tmuleq\tr3, fp, r8\n-\tandeq\tlr, r3, r9, lsl #17\n-./src/surface.c:51\n-\tbvc\t3d848 <__cxa_finalize@plt+0x3c838>\n-./src/surface.c:49\n-\tbleq\t7e604 <__cxa_finalize@plt+0x7d5f4>\n-./src/surface.c:51\n-\tbvc\tfd950 <__cxa_finalize@plt+0xfc940>\n-\tldrbmi\tr4, [sl], r3, ror #12\n-\tcdp\t6, 11, cr4, cr4, cr1, {7}\n-\tvsqrt.f32\ts15, s15\n-\tvstrle\ts30, [ip, #-64]\t@ 0xffffffc0\n-./src/surface.c:54\n-\tldm\tip, {r2, r3, r8, r9, ip, sp}\n-./src/surface.c:53\n-\tstm\tr8, {r0, r1, r2}\n-\tldm\tr3, {r0, r1, r2}\n-./src/surface.c:54\n+\tmrc\t7, 4, APSR_nzcv, cr6, cr14, {7}\n+./src/viewer.c:405\n+\tldc\t6, cr4, [sp, #128]\t@ 0x80\n+\t\t\t@ instruction: 0xf7feba1a\n+\tmrc\t14, 5, lr, cr0, cr6, {2}\n+./src/viewer.c:407\n+\tstrmi\tr0, [r3], r8, asr #20\n+./src/viewer.c:405\n+\t\t\t@ instruction: 0xf7fe9014\n+./src/viewer.c:407\n+\tmrc\t14, 5, lr, cr0, cr6, {2}\n+\tvneg.f32\ts20, s0\n+./src/viewer.c:408\n+\tvldr\ts1, [sp, #288]\t@ 0x120\n+\t\t\t@ instruction: 0xf7feba1b\n+\tstccs\t14, cr14, [r0, #-840]\t@ 0xfffffcb8\n+./src/viewer.c:413\n+\tbvc\t97d970 <__cxa_finalize@plt+0x97c960>\n+\tbvs\t3ddd4 <__cxa_finalize@plt+0x3cdc4>\n+\tbpl\t93d878 <__cxa_finalize@plt+0x93c868>\n+\tbpl\t23ddd8 <__cxa_finalize@plt+0x23cdc8>\n+\tbvc\t8fd880 <__cxa_finalize@plt+0x8fc870>\n+\tbvs\t3dd00 <__cxa_finalize@plt+0x3ccf0>\n+\tmrc\t15, 7, fp, cr0, cr8, {0}\n+\t\t\t@ instruction: 0xf8d96a65\n+./src/viewer.c:416 (discriminator 1)\n+\tsvclt\t0x0018300c\n+./src/viewer.c:413\n+\tbvc\t117ddd8 <__cxa_finalize@plt+0x117cdc8>\n+\tmrc\t15, 5, fp, cr0, cr8, {0}\n+\tvcvt.u16.f32\ts14, s14, #4\n+./src/trigonometry.h:23\n+\tvdiv.f32\ts13, s12, s0\n+./src/trigonometry.h:22\n+\tvstr\ts13, [sp, #668]\t@ 0x29c\n+\tvdiv.f32\ts13, s12, s28\n+./src/trigonometry.h:23\n+\tvdiv.f32\ts13, s14, s15\n+./src/trigonometry.h:24\n+\tvstr\ts15, [sp, #156]\t@ 0x9c\n+./src/trigonometry.h:23\n+\tvstr\ts13, [sp, #60]\t@ 0x3c\n+./src/trigonometry.h:24\n+\tblcs\t20a7c <__cxa_finalize@plt+0x1fa6c>\n+./src/viewer.c:416 (discriminator 1)\n+\tsubshi\tpc, r2, #0\n+./src/viewer.c:416\n+\tstmdaeq\tr0, {r0, r1, r2, r3, r6, ip, sp, lr, pc}\n+\tmovwls\tsl, #47901\t@ 0xbb1d\n+\tmovwls\tsl, #52000\t@ 0xcb20\n+\tmovwls\tsl, #56099\t@ 0xdb23\n+\tbge\te2cf58 <__cxa_finalize@plt+0xe2bf48>\n+\tblcc\tffffe684 <__cxa_finalize@plt+0xffffd674>\n+\tandsls\tsl, r6, #62, 30\t@ 0xf8\n+./src/viewer.c:426\n+\trsblt\tpc, r0, sp, asr #17\n+\tldrbmi\tsl, [r3], pc, lsr #20\n+\t\t\t@ instruction: 0x46ca9215\n+\tstrbmi\tsl, [r1], ip, lsr #20\n+\tbge\t103de30 <__cxa_finalize@plt+0x103ce20>\n+./src/viewer.c:341\n+\tbls\tff27dd50 <__cxa_finalize@plt+0xff27cd40>\n+\tldcge\t14, cr10, [r2, #-236]!\t@ 0xffffff14\n+\t\t\t@ instruction: 0x4698ac35\n+\tblhi\t3dd58 <__cxa_finalize@plt+0x3cd48>\n+\tsmladls\tsl, r7, r2, r9\n+./src/viewer.c:426\n+\tsvclt\t0x0000e0f0\n+\tsvccc\t0x00b504f3\n+\tsvccc\t0x00ac5345\n+\tandeq\tr0, r0, r0\n+\tandeq\tsp, r1, lr, lsl sp\n+\tandeq\tr0, r0, r4, lsl r1\n+./src/viewer.c:443\n+\t\t\t@ instruction: 0xf50d9f0b\n+\tandcs\tr7, r0, sl, lsl #25\n+\tcdp\t0, 11, cr9, cr0, cr14, {2}\n+./src/viewer.c:342\n+\t\t\t@ instruction: 0xf50d2b45\n+./src/viewer.c:443\n+\tldm\tr7, {r4, r7, r9, sl, fp, ip, sp, lr}\n \tstm\tip, {r0, r1, r2}\n-\tldm\tr8, {r0, r1, r2}\n-./src/surface.c:55\n-\tstm\tr3, {r0, r1, r2}\n-\t\t\t@ instruction: 0xf1ba0007\n-./src/surface.c:49 (discriminator 1)\n-\tandle\tr0, sp, r2, lsl #30\n-./src/surface.c:51\n-\tbvc\t1bd978 <__cxa_finalize@plt+0x1bc968>\n-./src/surface.c:49 (discriminator 1)\n-\tstmdbeq\tip, {r0, r3, r8, ip, sp, lr, pc}\n-./src/surface.c:51\n-\tbvc\t3d88c <__cxa_finalize@plt+0x3c87c>\n-\tbeq\tbe35c <__cxa_finalize@plt+0xbd34c>\n-\tcdp\t6, 11, cr4, cr4, cr11, {2}\n-\tvsqrt.f32\ts15, s15\n-\tvstmiale\tr1!, {s31-s46}\n-./src/surface.c:47 (discriminator 1)\n-\tstceq\t1, cr15, [ip], {12}\n-\tbeq\t7e370 <__cxa_finalize@plt+0x7d360>\n-\tsvceq\t0x0002f1bb\n-\tldm\tlr!, {r2, r3, r6, r7, r8, ip, lr, pc}\n-./src/surface.c:59\n-\t\t\t@ instruction: 0xf10d000f\n-\tstrbtmi\tr0, [r0], r4, ror #24\n-./src/surface.c:166\n-\tblls\t3dd20 <__cxa_finalize@plt+0x3cd10>\n-./src/surface.c:169\n-\tblt\tff53d9c8 <__cxa_finalize@plt+0xff53c9b8>\n-./src/surface.c:59\n-\tandeq\tlr, pc, ip, lsr #17\n+\tbls\t3022d4 <__cxa_finalize@plt+0x3012c4>\n+./src/viewer.c:342\n+\tbmi\t11bd930 <__cxa_finalize@plt+0x11bc920>\n+./src/viewer.c:343\n+\tbvc\t11fd934 <__cxa_finalize@plt+0x11fc924>\n+./src/viewer.c:341\n+\tbcc\t117da38 <__cxa_finalize@plt+0x117ca28>\n+./src/viewer.c:342\n+\tbmi\tff13dda4 <__cxa_finalize@plt+0xff13cd94>\n+./src/viewer.c:343\n+\tbvc\tff1fdda8 <__cxa_finalize@plt+0xff1fcd98>\n+./src/viewer.c:341\n+\tbcc\tff8fddac <__cxa_finalize@plt+0xff8fcd9c>\n+./src/viewer.c:443\n+\tvmul.f32\ts24, s8, s14\n+./src/viewer.c:342\n+\tvmul.f64\td4, d7, d8\n+./src/viewer.c:343\n+\tstm\tlr, {r3, r8, r9, fp, ip, sp, lr}\n+./src/viewer.c:443\n+\tcdp\t0, 2, cr0, cr3, cr7, {0}\n+./src/viewer.c:341\n+\tstmdbls\tsp, {r3, r8, r9, fp, ip, sp}\n+./src/viewer.c:443\n+\tcdpvc\t5, 9, cr15, cr6, cr13, {0}\n+./src/viewer.c:342\n+\tblcs\t127dafc <__cxa_finalize@plt+0x127caec>\n+./src/viewer.c:343\n+\tblmi\t123ddb0 <__cxa_finalize@plt+0x123cda0>\n+\tblmi\t27db10 <__cxa_finalize@plt+0x27cb00>\n+./src/viewer.c:341\n+\tblvc\t11bddb8 <__cxa_finalize@plt+0x11bcda8>\n+\tblvc\t27db08 <__cxa_finalize@plt+0x27caf8>\n+\tbcc\t123da74 <__cxa_finalize@plt+0x123ca64>\n+./src/viewer.c:443\n+\t\t\t@ instruction: 0xeeb7c907\n+./src/viewer.c:341\n+\tvcvt.f64.f32\td3, s7\n+./src/viewer.c:342\n+\tvcvt.f32.f64\ts4, d2\n+./src/viewer.c:343\n+\tvnmul.f64\td4, d19, d4\n+./src/viewer.c:341\n+\tvmov.f64\td3, #120\t@ 0x3fc00000 1.5\n+\tvstr\td7, [sp, #796]\t@ 0x31c\n+./src/viewer.c:444\n+\tvmov.f32\ts4, s12\n+./src/viewer.c:342\n+\tvstr\td2, [sp, #276]\t@ 0x114\n+./src/viewer.c:444\n+\tvldr\ts8, [sp, #284]\t@ 0x11c\n+./src/viewer.c:342\n+\tvstr\ts8, [sp, #292]\t@ 0x124\n+./src/viewer.c:341\n+\tvldr\ts14, [sp, #276]\t@ 0x114\n+./src/viewer.c:343\n+\tvrintx.f32\ts14, s20\n+./src/viewer.c:342\n+\tvcvt.f64.f32\td4, s8\n+./src/viewer.c:343\n+\tvnmul.f32\ts14, s9, s14\n+./src/viewer.c:342\n+\tvmul.f64\td4, d7, d8\n+./src/viewer.c:343\n+\tvmla.f64\td7, d4, d8\n+./src/viewer.c:342\n+\tvmov.f64\td2, d9\n+./src/viewer.c:343\n+\tvmls.f64\td4, d7, d8\n+\tvmov.f64\td4, #9\t@ 0x40480000 3.125\n+./src/viewer.c:341\n+\tvmls.f64\td7, d3, d6\n+\tvmov.f64\td7, #121\t@ 0x3fc80000 1.5625000\n+./src/viewer.c:342\n+\tvcvt.f32.f64\ts4, d2\n+./src/viewer.c:343\n+\tvcvt.f32.f64\ts8, d4\n+./src/viewer.c:341\n+\tvstr\td7, [sp, #796]\t@ 0x31c\n+./src/viewer.c:445\n+\tvstr\ts4, [sp, #292]\t@ 0x124\n+\tvstr\ts8, [sp, #296]\t@ 0x128\n+./src/viewer.c:341\n+\tstm\tlr, {r3, r6, r9, fp, ip, sp, lr}\n+./src/viewer.c:443\n+\tstrbtmi\tr0, [r0], -r7\n+./src/viewer.c:342\n+\tbmi\t133d9e8 <__cxa_finalize@plt+0x133c9d8>\n+./src/viewer.c:343\n+\tbvc\t137d9ec <__cxa_finalize@plt+0x137c9dc>\n+./src/viewer.c:341\n+\tbcc\t12fdaf0 <__cxa_finalize@plt+0x12fcae0>\n+./src/viewer.c:342\n+\tbmi\tff13de5c <__cxa_finalize@plt+0xff13ce4c>\n+./src/viewer.c:343\n+\tbvc\tff1fde60 <__cxa_finalize@plt+0xff1fce50>\n+./src/viewer.c:341\n+\tbcc\tff8fde64 <__cxa_finalize@plt+0xff8fce54>\n+./src/viewer.c:342\n+\tblmi\t23dc1c <__cxa_finalize@plt+0x23cc0c>\n+./src/viewer.c:343\n+\tblvc\t23dc2c <__cxa_finalize@plt+0x23cc1c>\n+./src/viewer.c:341\n+\tblcc\t23dc20 <__cxa_finalize@plt+0x23cc10>\n+./src/viewer.c:342\n+\tblpl\t127dba8 <__cxa_finalize@plt+0x127cb98>\n+./src/viewer.c:343\n+\tblmi\t123de5c <__cxa_finalize@plt+0x123ce4c>\n+\tblmi\t27dbbc <__cxa_finalize@plt+0x27cbac>\n+./src/viewer.c:341\n+\tblvs\t27dbb0 <__cxa_finalize@plt+0x27cba0>\n+./src/viewer.c:342\n+\tblpl\tff17de84 <__cxa_finalize@plt+0xff17ce74>\n+./src/viewer.c:343\n+\tblmi\tff13de88 <__cxa_finalize@plt+0xff13ce78>\n+./src/viewer.c:341\n+\tblvs\tff1bde8c <__cxa_finalize@plt+0xff1bce7c>\n+./src/viewer.c:446\n+\tbpl\t133d9e8 <__cxa_finalize@plt+0x133c9d8>\n+\tbmi\t137d9ec <__cxa_finalize@plt+0x137c9dc>\n+./src/viewer.c:341\n+\tbvs\t12fd9f0 <__cxa_finalize@plt+0x12fc9e0>\n+./src/viewer.c:448\n+\tcdp2\t0, 1, cr15, cr12, cr1, {0}\n+./src/trigonometry.h:76\n+\tbvc\t3fdb38 <__cxa_finalize@plt+0x3fcb28>\n+./src/viewer.c:448\n+\tbeq\t9bd9fc <__cxa_finalize@plt+0x9bc9ec>\n+\tbeq\t9fdb00 <__cxa_finalize@plt+0x9fcaf0>\n+./src/trigonometry.h:76\n+\tbvc\tff9fdc50 <__cxa_finalize@plt+0xff9fcc40>\n+\tbvc\t3bdb48 <__cxa_finalize@plt+0x3bcb38>\n+./src/viewer.c:448\n+\tbne\ta3da0c <__cxa_finalize@plt+0xa3c9fc>\n+./src/trigonometry.h:76\n+\tbvc\t19fdbdc <__cxa_finalize@plt+0x19fcbcc>\n+\tbvc\t43db54 <__cxa_finalize@plt+0x43cb44>\n+./src/viewer.c:349 (discriminator 1)\n+\tbleq\t123dea4 <__cxa_finalize@plt+0x123ce94>\n+./src/viewer.c:350\n+\tbgt\t63da5c <__cxa_finalize@plt+0x63ca4c>\n+./src/trigonometry.h:76\n+\tbvc\t19fdbf0 <__cxa_finalize@plt+0x19fcbe0>\n+./src/viewer.c:349 (discriminator 1)\n+\tbvc\tff1fdecc <__cxa_finalize@plt+0xff1fcebc>\n+\tbleq\t23dc10 <__cxa_finalize@plt+0x23cc00>\n+./src/viewer.c:350\n+\tbvc\tff33dfd8 <__cxa_finalize@plt+0xff33cfc8>\n+./src/viewer.c:349 (discriminator 1)\n+\tbleq\tff03ded8 <__cxa_finalize@plt+0xff03cec8>\n+./src/viewer.c:350\n+\tbeq\t9fdc80 <__cxa_finalize@plt+0x9fcc70>\n+\tstc\t7, cr15, [r2], #1016\t@ 0x3f8\n+./src/viewer.c:350 (discriminator 1)\n+\tbvc\tff03dffc <__cxa_finalize@plt+0xff03cfec>\n+./src/viewer.c:353\n+\tbne\t43dc7c <__cxa_finalize@plt+0x43cc6c>\n+\tvmov.32\tr9, d7[0]\n+./src/viewer.c:350 (discriminator 1)\n+\tb\t88ce54 <__cxa_finalize@plt+0x88be44>\n+./src/viewer.c:351\n+\taddsmi\tr7, r3, #536870926\t@ 0x2000000e\n+./src/viewer.c:353\n+\tldrmi\tfp, [r1], -r8, asr #31\n+./src/viewer.c:355\n+\tvmovpl\tr9, sl, d2\n+./src/viewer.c:455\n+\tblls\t668870 <__cxa_finalize@plt+0x667860>\n+\t\t\t@ instruction: 0xf0002900\n+\t\t\t@ instruction: 0xf8da815a\n+./src/viewer.c:455 (discriminator 1)\n+\tldrmi\tr1, [r9], #-20\t@ 0xffffffec\n+\t\t\t@ instruction: 0xf8dd68cb\n+./src/viewer.c:455 (discriminator 4)\n+\tstrbtmi\tlr, [ip], r8, lsr #32\n+\tmovwcs\tlr, #35277\t@ 0x89cd\n+\tmovwls\tr2, #29441\t@ 0x7301\n+./src/viewer.c:416 (discriminator 2)\n+\tstmdbeq\tr1, {r0, r3, r8, ip, sp, lr, pc}\n+./src/viewer.c:455 (discriminator 4)\n \t\t\t@ instruction: 0x000fe8be\n \tandeq\tlr, pc, ip, lsr #17\n-\tmuleq\tr3, lr, r8\n-\tandeq\tlr, r3, ip, lsl #17\n-./src/surface.c:161\n-\t\t\t@ instruction: 0x000fe8b8\n-\tldm\tr8!, {r0, r1, r2, r3, sl, lr, pc}\n-\tstrgt\tr0, [pc], #-15\t@ 226c <__cxa_finalize@plt+0x125c>\n-./src/surface.c:163\n-\tbgt\t13d8c4 <__cxa_finalize@plt+0x13c8b4>\n-./src/surface.c:161\n-\tb\t7fd8e8 <__cxa_finalize@plt+0x7fc8d8>\n-\tbvs\t73d9ec <__cxa_finalize@plt+0x73c9dc>\n-./src/surface.c:166\n-\tble\tff33dd58 <__cxa_finalize@plt+0xff33cd48>\n-./src/surface.c:161\n-\tbvs\t77d8f4 <__cxa_finalize@plt+0x77c8e4>\n-./src/surface.c:167\n-\tbvc\tff3bdd60 <__cxa_finalize@plt+0xff3bcd50>\n-./src/surface.c:161\n-\tblt\t67d8fc <__cxa_finalize@plt+0x67c8ec>\n-\tmuleq\tr3, ip, r8\n-\tandeq\tlr, r3, r4, lsl #17\n-./src/surface.c:166\n-\tblpl\t27db48 <__cxa_finalize@plt+0x27cb38>\n-./src/surface.c:161\n-\tbhi\t6bd90c <__cxa_finalize@plt+0x6bc8fc>\n-\tbhi\t6fda10 <__cxa_finalize@plt+0x6fca00>\n-\tb\t83da14 <__cxa_finalize@plt+0x83ca04>\n-\tbvs\t7d9d8 <__cxa_finalize@plt+0x7c9c8>\n-./src/surface.c:167\n-\tblvc\t117db84 <__cxa_finalize@plt+0x117cb74>\n-./src/surface.c:161\n-\tbvs\t3d8e0 <__cxa_finalize@plt+0x3c8d0>\n-./src/surface.c:167\n-\tblge\tff1fde8c <__cxa_finalize@plt+0xff1fce7c>\n-./src/surface.c:169\n-\tbge\tffafde84 <__cxa_finalize@plt+0xffafce74>\n-\tblx\t43de7c <__cxa_finalize@plt+0x43ce6c>\n-\tsvcge\t0x0059f53f\n-./src/surface.c:166\n-\tbeq\tff2fdd9c <__cxa_finalize@plt+0xff2fcd8c>\n-./src/surface.c:169 (discriminator 1)\n-\tbvc\tbda18 <__cxa_finalize@plt+0xbca08>\n-./src/surface.c:166\n-\tbleq\t17db88 <__cxa_finalize@plt+0x17cb78>\n-\tbleq\tff03dda8 <__cxa_finalize@plt+0xff03cd98>\n-./src/surface.c:169 (discriminator 1)\n-\tbvc\tff03dea0 <__cxa_finalize@plt+0xff03ce90>\n-\tblx\t43de98 <__cxa_finalize@plt+0x43ce88>\n-\tsvcge\t0x004bf53f\n-./src/surface.c:112\n-\tbeq\t33dcdc <__cxa_finalize@plt+0x33cccc>\n-\tldrdhi\tpc, [r4], -r5\n-\tmvnscc\tpc, #8, 2\n-\tbcc\t43db10 <__cxa_finalize@plt+0x43cb00>\n-\tstc\t7, cr15, [r8, #1016]!\t@ 0x3f8\n-\tbvc\t103deb0 <__cxa_finalize@plt+0x103cea0>\n-\tbeq\tfe33dd1c <__cxa_finalize@plt+0xfe33cd0c>\n-\tbge\t12bddd8 <__cxa_finalize@plt+0x12bcdc8>\n-\tbvc\tff9fdef0 <__cxa_finalize@plt+0xff9fcee0>\n-./src/surface.c:112 (discriminator 1)\n-\tbvc\tff9fdee0 <__cxa_finalize@plt+0xff9fced0>\n-\tbge\tff9fddd4 <__cxa_finalize@plt+0xff9fcdc4>\n-\tblx\t43decc <__cxa_finalize@plt+0x43cebc>\n-\tcdp\t15, 15, cr11, cr0, cr8, {2}\n-\tvcmp.f32\ts15, s20\n-./src/surface.c:112 (discriminator 3)\n-\tvsqrt.f32\ts15, s23\n-\tsvclt\t0x0048fa10\n-\tbvc\t1afdedc <__cxa_finalize@plt+0x1afcecc>\n-\tbvc\tff9fdf14 <__cxa_finalize@plt+0xff9fcf04>\n-\tbge\tfe43db80 <__cxa_finalize@plt+0xfe43cb70>\n-./src/surface.c:112\n-\tstc\t7, cr15, [sl, #1016]\t@ 0x3f8\n-\tbvc\tff03df20 <__cxa_finalize@plt+0xff03cf10>\n-./src/surface.c:112 (discriminator 1)\n-\tbvc\tff9fdf10 <__cxa_finalize@plt+0xff9fcf00>\n-\tbvc\tff2bdf04 <__cxa_finalize@plt+0xff2bcef4>\n-\tblx\t43defc <__cxa_finalize@plt+0x43ceec>\n-\tmrc\t15, 5, fp, cr0, cr8, {6}\n-\tvcmp.f32\ts20, s15\n-./src/surface.c:112 (discriminator 3)\n-\tvsqrt.f32\ts21, s23\n-\tsvclt\t0x0048fa10\n-\tbge\t1afde0c <__cxa_finalize@plt+0x1afcdfc>\n-\tbvc\tff2bdf44 <__cxa_finalize@plt+0xff2bcf34>\n-\tblt\tfe43dbb0 <__cxa_finalize@plt+0xfe43cba0>\n-./src/surface.c:175 (discriminator 1)\n-\t\t\t@ instruction: 0xf6ff45d3\n-\tldcl\t15, cr10, [sp, #40]\t@ 0x28\n-\tmovwcs\tr7, #51721\t@ 0xca09\n-\tbgt\t2bdad8 <__cxa_finalize@plt+0x2bcac8>\n-\tbleq\t7e794 <__cxa_finalize@plt+0x7d784>\n-\tbgt\t2fd9e0 <__cxa_finalize@plt+0x2fc9d0>\n-\tbvc\t1fdaa4 <__cxa_finalize@plt+0x1fca94>\n-\t\t\t@ instruction: 0xf908fb03\n-./src/surface.c:164\n-\tbvc\t17dacc <__cxa_finalize@plt+0x17cabc>\n-\tbvs\t7daf0 <__cxa_finalize@plt+0x7cae0>\n-\tbvs\t3d9f4 <__cxa_finalize@plt+0x3c9e4>\n-\tbvc\t1bdab8 <__cxa_finalize@plt+0x1bcaa8>\n-\tcdp\t0, 15, cr14, cr4, cr12, {2}\n-./src/surface.c:125\n-\tvsqrt.f32\ts11, s28\n-\tvmov.i16\td15, #0\t@ 0x0000\n-\tmrc\t0, 7, r8, cr4, cr0, {7}\n-./src/surface.c:127\n-\tvsub.f32\ts12, s11, s11\n-./src/surface.c:128\n-\tvsqrt.f32\ts11, s22\n-./src/surface.c:127\n-\tvmov.i16\td15, #0\t@ 0x0000\n-\tcdp\t0, 3, cr8, cr5, cr15, {7}\n-./src/surface.c:129\n-\tvsub.f32\ts15, s29, s13\n-\tvnmul.f32\ts15, s15, s12\n-\tvadd.f32\ts14, s29, s14\n-\t\t\t@ instruction: 0xee877a66\n-\tvadd.f32\ts0, s1, s14\n-\tvadd.f32\ts0, s28, s12\n-./src/surface.c:138\n-\tvnmul.f32\ts14, s15, s16\n-\tvadd.f32\ts14, s28, s10\n-\t\t\t@ instruction: 0xeec75a4b\n-\tvadd.f32\ts15, s14, s10\n-\t\t\t@ instruction: 0xeef47a88\n-\tvsqrt.f32\ts15, s0\n-\tsvclt\t0x00ccfa10\n-\tandcs\tr2, r0, #268435456\t@ 0x10000000\n-\tmovwcs\tfp, #8012\t@ 0x1f4c\n-\tblcs\tafe4 <__cxa_finalize@plt+0x9fd4>\n-./src/surface.c:182\n-\tcdp\t15, 11, cr11, cr0, cr12, {0}\n-\tvmov.f32\ts14, s15\n-\tvcmp.f32\ts14, #0.0\n-./src/surface.c:184\n-\tvsqrt.f32\ts15, s0\n-\tstrle\tpc, [lr], #-2576\t@ 0xfffff5f0\n-\tvstr\ts4, [sp]\n-\tvstr\ts15, [sp]\n-\tsvclt\t0x00085a01\n-\tbeq\t19fdec8 <__cxa_finalize@plt+0x19fceb8>\n-./src/surface.c:184 (discriminator 2)\n-\tbvc\tfdb60 <__cxa_finalize@plt+0xfcb50>\n-\tbvc\tff03dfe0 <__cxa_finalize@plt+0xff03cfd0>\n-\tblx\t43dfd8 <__cxa_finalize@plt+0x43cfc8>\n-\t\t\t@ instruction: 0xf10ad51a\n-./src/surface.c:175 (discriminator 2)\n-\tldrbmi\tr0, [sl, #2561]\t@ 0xa01\n-./src/surface.c:175 (discriminator 1)\n-\tmcrge\t4, 5, pc, cr7, cr15, {1}\t@ \n-./src/surface.c:177\n-\tbge\tfe43dc40 <__cxa_finalize@plt+0xfe43cc30>\n-\tblvc\tff9fdf08 <__cxa_finalize@plt+0xff9fcef8>\n-\tblvc\t27dd08 <__cxa_finalize@plt+0x27ccf8>\n-\tblvc\t37dccc <__cxa_finalize@plt+0x37ccbc>\n-\tblpl\tff1fe010 <__cxa_finalize@plt+0xff1fd000>\n-./src/surface.c:123\n-\tbpl\tff2fe008 <__cxa_finalize@plt+0xff2fcff8>\n-\tblx\t43e000 <__cxa_finalize@plt+0x43cff0>\n-\tmovwcs\tsp, #2211\t@ 0x8a3\n-\tbeq\t123df04 <__cxa_finalize@plt+0x123cef4>\n-./src/surface.c:135\n-\tbvc\t123e008 <__cxa_finalize@plt+0x123cff8>\n-\tbfi\tr4, sl, (invalid: 12:10)\n-./src/surface.c:118\n-\tcdp\t8, 11, cr6, cr7, cr11, {1}\n-./src/surface.c:187\n-\tvldr\ts1, [r5, #768]\t@ 0x300\n-\tblcc\t80c6c <__cxa_finalize@plt+0x7fc5c>\n-./src/surface.c:118\n-\tbcc\tfe43dc78 <__cxa_finalize@plt+0xfe43cc68>\n-\tbvs\t17da94 <__cxa_finalize@plt+0x17ca84>\n-\tblx\t19fdf44 <__cxa_finalize@plt+0x19fcf34>\n-./src/surface.c:187\n-\tbvc\t1bdbdc <__cxa_finalize@plt+0x1bcbcc>\n-\tbvs\t13dba0 <__cxa_finalize@plt+0x13cb90>\n-\tbge\tff9fdf4c <__cxa_finalize@plt+0xff9fcf3c>\n-\tblmi\t27dd1c <__cxa_finalize@plt+0x27cd0c>\n-\tbleq\t13dd38 <__cxa_finalize@plt+0x13cd28>\n-\tblmi\tbdab0 <__cxa_finalize@plt+0xbcaa0>\n-\tbleq\tff03df5c <__cxa_finalize@plt+0xff03cf4c>\n-./src/surface.c:118\n-\tbeq\tbfde84 <__cxa_finalize@plt+0xbfce74>\n-\tldcl\t7, cr15, [sl], {254}\t@ 0xfe\n-\tbvc\tff03e080 <__cxa_finalize@plt+0xff03d070>\n-./src/surface.c:188\n-\tbvc\t3db04 <__cxa_finalize@plt+0x3caf4>\n-\tblmi\tbdb08 <__cxa_finalize@plt+0xbcaf8>\n-./src/surface.c:118 (discriminator 1)\n-\tbvc\tff9fe078 <__cxa_finalize@plt+0xff9fd068>\n-\tblx\tff9fdf6c <__cxa_finalize@plt+0xff9fcf5c>\n-\tblx\t43e064 <__cxa_finalize@plt+0x43d054>\n-\tcdp\t15, 15, cr11, cr0, cr8, {2}\n-\tvcmp.f32\ts15, #0.0\n-./src/surface.c:118 (discriminator 3)\n-\tvsqrt.f32\ts15, s0\n-\tsvclt\t0x0048fa10\n-\tbvc\t1afe074 <__cxa_finalize@plt+0x1afd064>\n-\tbvc\tff9fe0ac <__cxa_finalize@plt+0xff9fd09c>\n-\tbmi\tfe43dd18 <__cxa_finalize@plt+0xfe43cd08>\n-./src/surface.c:188\n-\tbvc\tff1fdf9c <__cxa_finalize@plt+0xff1fcf8c>\n-\tblvc\t113dda0 <__cxa_finalize@plt+0x113cd90>\n-\tblvc\tff1fdfa4 <__cxa_finalize@plt+0xff1fcf94>\n-./src/surface.c:118\n-\tbeq\tbfdee8 <__cxa_finalize@plt+0xbfced8>\n-\tldc\t7, cr15, [r6], #1016\t@ 0x3f8\n-\tbeq\tff03dfc8 <__cxa_finalize@plt+0xff03cfb8>\n-./src/surface.c:190 (discriminator 1)\n-\tbvs\t13dc4c <__cxa_finalize@plt+0x13cc3c>\n-\tbvs\t17db50 <__cxa_finalize@plt+0x17cb40>\n-./src/surface.c:118 (discriminator 1)\n-\tbeq\tff03dfc0 <__cxa_finalize@plt+0xff03cfb0>\n-\tbeq\tff3fdfb4 <__cxa_finalize@plt+0xff3fcfa4>\n-\tblx\t43e0ac <__cxa_finalize@plt+0x43d09c>\n-\tmrc\t15, 5, fp, cr0, cr4, {6}\n-\tvmov.f32\ts10, s0\n-\tvcmp.f32\ts10, #0.0\n-./src/surface.c:118 (discriminator 3)\n-\tvsqrt.f32\ts11, s0\n-\tsvclt\t0x0048fa10\n-\tbpl\t1afdfc0 <__cxa_finalize@plt+0x1afcfb0>\n-\tbvc\tff17e0f8 <__cxa_finalize@plt+0xff17d0e8>\n-\tbcs\tfe43dd64 <__cxa_finalize@plt+0xfe43cd54>\n-./src/surface.c:190 (discriminator 1)\n-\tblle\tfe112f94 <__cxa_finalize@plt+0xfe111f84>\n-./src/surface.c:150\n-\tbpl\t7dc84 <__cxa_finalize@plt+0x7cc74>\n-\tandge\tpc, r4, r8, lsl #22\n-\tsmlatbcs\tip, fp, r9, r6\n-\tbvc\t1fdc90 <__cxa_finalize@plt+0x1fcc80>\n-\tcdp\t2, 7, cr3, cr5, cr1, {0}\n-\tblx\t59052 <__cxa_finalize@plt+0x58042>\n-\tcdp\t3, 6, cr3, cr5, cr0, {0}\n-\tvmla.f32\ts10, s15, s15\n-./src/surface.c:148\n-\t\t\t@ instruction: 0xeef04a90\n-./src/surface.c:150\n-\tvldr\ts8, [r3, #404]\t@ 0x194\n-./src/surface.c:196\n-\tstrcc\tr5, [r1], #-2560\t@ 0xfffff600\n-./src/surface.c:148\n-\tblvc\tff9fe01c <__cxa_finalize@plt+0xff9fd00c>\n-\tblvc\t27de1c <__cxa_finalize@plt+0x27ce0c>\n-\tblvc\t2bdde0 <__cxa_finalize@plt+0x2bcdd0>\n-\tblvc\tff1fe024 <__cxa_finalize@plt+0xff1fd014>\n-./src/surface.c:150\n-\tbvc\t123de28 <__cxa_finalize@plt+0x123ce18>\n-\tbmi\tb3de6c <__cxa_finalize@plt+0xb3ce5c>\n-\tbvc\tfe33e064 <__cxa_finalize@plt+0xfe33d054>\n-\tbvc\tff9fdf38 <__cxa_finalize@plt+0xff9fcf28>\n-./src/surface.c:196\n-\tbpl\tff9fe02c <__cxa_finalize@plt+0xff9fd01c>\n-\tblx\t43e124 <__cxa_finalize@plt+0x43d114>\n-./src/surface.c:199\n-\ttstvc\tlr, r2, asr #31\n-./src/surface.c:200\n-\tstcl\t0, cr6, [r3, #636]\t@ 0x27c\n-./src/surface.c:198\n-\tstrbmi\tr7, [fp], #-2560\t@ 0xfffff600\n-./src/surface.c:190 (discriminator 1)\n-\t\t\t@ instruction: 0xd1dc4294\n-\tmovwcs\tlr, #1873\t@ 0x751\n-\tbeq\t1bbe038 <__cxa_finalize@plt+0x1bbd028>\n-./src/surface.c:137\n-\tbvc\t1bbe13c <__cxa_finalize@plt+0x1bbd12c>\n-\t\t\t@ instruction: 0xe730461a\n-./src/surface.c:128\n-\tbvc\t123df5c <__cxa_finalize@plt+0x123cf4c>\n-\tbvc\tff2fde60 <__cxa_finalize@plt+0xff2fce50>\n-\tbvc\tfe17df28 <__cxa_finalize@plt+0xfe17cf18>\n-\tbeq\tfe1fdfac <__cxa_finalize@plt+0xfe1fcf9c>\n-\tbeq\t23de54 <__cxa_finalize@plt+0x23ce44>\n-\t\t\t@ instruction: 0xf7fee711\n-./src/surface.c:204\n-\tsvclt\t0x0000ecd8\n-\tandeq\tr0, r0, r0\n-\tmuleq\tr1, sl, sp\n+\tmuleq\tr7, lr, r8\n+\tandeq\tlr, r7, ip, lsl #17\n+\tldm\tr6, {r3, r4, r6, r9, sl, lr}\n+\t\t\t@ instruction: 0xf001000e\n+\t\t\t@ instruction: 0xf8dafebf\n+./src/viewer.c:416 (discriminator 1)\n+\tstrbmi\tr3, [fp, #-12]\n+\tteqphi\tlr, r0, asr #4\t@ p-variant is OBSOLETE\n+./src/viewer.c:418\n+\t\t\t@ instruction: 0x2014f8da\n+\tmovwne\tlr, #39503\t@ 0x9a4f\n+./src/viewer.c:422\n+\tldrdne\tpc, [r8], -sl\n+\tldmne\tr0, {r2, r3, r8, r9, sl, sp}^\n+\tldmib\tr0, {r1, r4, r6, r7, fp, ip, lr}^\n+./src/viewer.c:420\n+\tblx\t1fa486 <__cxa_finalize@plt+0x1f9476>\n+./src/viewer.c:422\n+\tblx\t1c6c8e <__cxa_finalize@plt+0x1c5c7e>\n+./src/viewer.c:423\n+\tblx\t1c9cc2 <__cxa_finalize@plt+0x1c8cb2>\n+./src/viewer.c:424\n+\tsvcls\t0x000b1c00\n+./src/viewer.c:422\n+\tstm\tr7, {r0, r1, r2, r9, fp, lr, pc}\n+\tsvcls\t0x000c0007\n+./src/viewer.c:423\n+\tmuleq\tr7, lr, r8\n+\tandeq\tlr, r7, r7, lsl #17\n+./src/viewer.c:424\n+\tldm\tip, {r0, r2, r3, r8, r9, sl, fp, ip, pc}\n+\tstm\tr7, {r0, r1, r2}\n+\tandcs\tr0, r0, r7\n+./src/viewer.c:426\n+\tsubls\tr9, r4, fp, lsl #30\n+\tmuleq\tr7, r7, r8\n+\tandeq\tlr, r7, r6, lsl #17\n+\tbvc\tf7dc2c <__cxa_finalize@plt+0xf7cc1c>\n+\tbvs\tefdc30 <__cxa_finalize@plt+0xefcc20>\n+\tvmul.f32\ts18, s22, s24\n+./src/trigonometry.h:30\n+\tsvcls\t0x000a7aa7\n+./src/trigonometry.h:31\n+\tbvc\t9fde74 <__cxa_finalize@plt+0x9fce64>\n+\tbvc\tfe9bddf8 <__cxa_finalize@plt+0xfe9bcde8>\n+./src/viewer.c:426\n+\tvnmls.f32\ts24, s22, s14\n+./src/trigonometry.h:30\n+\tstm\tr7, {r1, r2, r5, r9, fp, ip, sp, lr}\n+./src/viewer.c:426\n+\tstmdbls\tsp, {r0, r1, r2}\n+./src/trigonometry.h:34\n+\tstmdbgt\tr7, {r1, r2, r4, r8, r9, sl, fp, ip, pc}\n+./src/viewer.c:426\n+\tandeq\tlr, r7, r8, lsl #17\n+./src/trigonometry.h:39\n+\tbcc\tfe9fdd8c <__cxa_finalize@plt+0xfe9fcd7c>\n+\tmuleq\tr7, r6, r8\n+\tandeq\tlr, r7, r5, lsl #17\n+./src/trigonometry.h:40\n+\tbpl\t9fdd98 <__cxa_finalize@plt+0x9fcd88>\n+./src/trigonometry.h:34\n+\tbvc\tcbdb28 <__cxa_finalize@plt+0xcbcb18>\n+./src/viewer.c:341\n+\tbcs\tff1fdfd4 <__cxa_finalize@plt+0xff1fcfc4>\n+./src/trigonometry.h:34\n+\tbvc\td3dc30 <__cxa_finalize@plt+0xd3cc20>\n+\tmuleq\tr7, r5, r8\n+\tandeq\tlr, r7, r7, lsl #17\n+\tbvc\t103dc7c <__cxa_finalize@plt+0x103cc6c>\n+\tbvs\tfbdc80 <__cxa_finalize@plt+0xfbcc70>\n+./src/viewer.c:341\n+\tblcs\t23dd98 <__cxa_finalize@plt+0x23cd88>\n+\tmuleq\tr7, r7, r8\n+./src/trigonometry.h:30\n+\tbvc\tfe9fddc4 <__cxa_finalize@plt+0xfe9fcdb4>\n+./src/trigonometry.h:31\n+\tbvc\t9fdec8 <__cxa_finalize@plt+0x9fceb8>\n+\tcdp\t15, 4, cr9, cr11, cr10, {0}\n+\tstm\tr4, {r1, r2, r5, r7, r9, fp, ip, sp, lr}\n+\tcdp\t0, 1, cr0, cr11, cr7, {0}\n+./src/trigonometry.h:30\n+\tstm\tr6, {r1, r2, r5, r9, fp, ip, sp, lr}\n+./src/viewer.c:428\n+\tldm\tr7, {r0, r1, r2}\n+./src/trigonometry.h:34\n+\tstm\tr5, {r0, r1, r2}\n+\tsvcls\t0x00150007\n+\tbvc\td3dc70 <__cxa_finalize@plt+0xd3cc60>\n+./src/trigonometry.h:39\n+\tbmi\tfe9fdde8 <__cxa_finalize@plt+0xfe9fcdd8>\n+./src/trigonometry.h:40\n+\tbvs\t9fddec <__cxa_finalize@plt+0x9fcddc>\n+./src/trigonometry.h:34\n+\tbvc\tcbdb7c <__cxa_finalize@plt+0xcbcb6c>\n+./src/viewer.c:341\n+\tbgt\tff1fe028 <__cxa_finalize@plt+0xff1fd018>\n+./src/trigonometry.h:34\n+\tmuleq\tr7, r5, r8\n+\tandeq\tlr, r7, r7, lsl #17\n+\tmuleq\tr7, r7, r8\n+\tandeq\tlr, r7, r4, lsl #17\n+./src/viewer.c:429\n+\tldcl\t15, cr9, [sp, #40]\t@ 0x28\n+\t\t\t@ instruction: 0xee2c5a3c\n+./src/viewer.c:341\n+\tvldr\td28, [sp, #32]\n+\tstm\tr7, {r0, r1, r6, r9, fp, ip, sp, lr}\n+./src/viewer.c:429\n+\tcdp\t0, 0, cr0, cr10, cr7, {0}\n+./src/trigonometry.h:40\n+\tvldr\ts11, [sp, #660]\t@ 0x294\n+\t\t\t@ instruction: 0xee1a6a3f\n+./src/trigonometry.h:39\n+\tvmul.f32\ts6, s22, s11\n+./src/trigonometry.h:30\n+\tvldr\ts0, [sp, #668]\t@ 0x29c\n+\tvnmul.f32\ts15, s22, s2\n+./src/trigonometry.h:31\n+\tsvcls\t0x00177a27\n+./src/trigonometry.h:40\n+\tbvs\tfe9bddb4 <__cxa_finalize@plt+0xfe9bcda4>\n+./src/trigonometry.h:39\n+\tbmi\t9bddf8 <__cxa_finalize@plt+0x9bcde8>\n+./src/trigonometry.h:31\n+\tbvc\tfe1fdec0 <__cxa_finalize@plt+0xfe1fceb0>\n+./src/trigonometry.h:30\n+\tbeq\t1fde04 <__cxa_finalize@plt+0x1fcdf4>\n+./src/trigonometry.h:34\n+\tmuleq\tr7, r8, r8\n+\tandeq\tlr, r7, r5, lsl #17\n+./src/viewer.c:343\n+\tbpl\tff17e080 <__cxa_finalize@plt+0xff17d070>\n+./src/viewer.c:342\n+\tbcc\tff0fe084 <__cxa_finalize@plt+0xff0fd074>\n+./src/viewer.c:343\n+\tbvs\tff1be088 <__cxa_finalize@plt+0xff1bd078>\n+./src/viewer.c:342\n+\tbmi\tff13e08c <__cxa_finalize@plt+0xff13d07c>\n+./src/viewer.c:343\n+\tblpl\t23de48 <__cxa_finalize@plt+0x23ce38>\n+./src/trigonometry.h:34\n+\tbvc\td3dcec <__cxa_finalize@plt+0xd3ccdc>\n+\tbeq\tcbdbf0 <__cxa_finalize@plt+0xcbcbe0>\n+./src/trigonometry.h:39\n+\tbeq\tfe9fdf68 <__cxa_finalize@plt+0xfe9fcf58>\n+./src/trigonometry.h:34\n+\tmuleq\tr7, r5, r8\n+./src/viewer.c:343\n+\tblvs\t23de60 <__cxa_finalize@plt+0x23ce50>\n+./src/viewer.c:342\n+\tbl\t23de5c <__cxa_finalize@plt+0x23ce4c>\n+./src/viewer.c:343\n+\tblmi\t123e090 <__cxa_finalize@plt+0x123d080>\n+\tblmi\t27dde8 <__cxa_finalize@plt+0x27cdd8>\n+\tblpl\t123e098 <__cxa_finalize@plt+0x123d088>\n+./src/trigonometry.h:34\n+\tandeq\tlr, r7, r7, lsl #17\n+./src/trigonometry.h:40\n+\tbvc\t9fde88 <__cxa_finalize@plt+0x9fce78>\n+./src/viewer.c:343\n+\tblpl\t27ddfc <__cxa_finalize@plt+0x27cdec>\n+\tmuleq\tr7, r7, r8\n+./src/viewer.c:430\n+\tandeq\tlr, r7, r8, lsl #17\n+./src/viewer.c:342\n+\tblle\t23de7c <__cxa_finalize@plt+0x23ce6c>\n+\tandeq\tlr, r7, r4, lsl #17\n+./src/viewer.c:341\n+\tbne\tff03e0d4 <__cxa_finalize@plt+0xff03d0c4>\n+\tbvc\t10bdd70 <__cxa_finalize@plt+0x10bcd60>\n+\tbvs\tbdc6c <__cxa_finalize@plt+0xbcc5c>\n+./src/viewer.c:343\n+\tblmi\tff13e0e0 <__cxa_finalize@plt+0xff13d0d0>\n+./src/viewer.c:441\n+\t\t\t@ instruction: 0xeef79a11\n+./src/viewer.c:343\n+\tvnmla.f64\td22, d26, d5\n+./src/trigonometry.h:39\n+\tvmla.f32\ts0, s20, s15\n+./src/trigonometry.h:40\n+\tvldr\ts14, [fp, #668]\t@ 0x29c\n+./src/viewer.c:342\n+\tvstr\ts10, [sp, #12]\n+./src/viewer.c:343\n+\t\t\t@ instruction: 0xee214a3d\n+./src/viewer.c:341\n+\ttstls\tr9, #8, 22\t@ 0x2000\n+./src/viewer.c:343\n+\tbvs\t103dd58 <__cxa_finalize@plt+0x103cd48>\n+./src/viewer.c:341\n+\tbvs\tff1be104 <__cxa_finalize@plt+0xff1bd0f4>\n+./src/viewer.c:342\n+\tbpl\tff17e108 <__cxa_finalize@plt+0xff17d0f8>\n+./src/viewer.c:341\n+\tblvs\t23dec8 <__cxa_finalize@plt+0x23ceb8>\n+./src/viewer.c:342\n+\tbcc\tff83e110 <__cxa_finalize@plt+0xff83d100>\n+./src/viewer.c:343\n+\tbvc\tff1fe114 <__cxa_finalize@plt+0xff1fd104>\n+./src/viewer.c:342\n+\tblpl\t23ded0 <__cxa_finalize@plt+0x23cec0>\n+./src/viewer.c:341\n+\tblmi\t11be100 <__cxa_finalize@plt+0x11bd0f0>\n+./src/viewer.c:342\n+\tblcc\t23ded0 <__cxa_finalize@plt+0x23cec0>\n+./src/viewer.c:341\n+\tblmi\t27de50 <__cxa_finalize@plt+0x27ce40>\n+./src/viewer.c:343\n+\tblvc\t23dee8 <__cxa_finalize@plt+0x23ced8>\n+./src/viewer.c:341\n+\tblcs\t11be110 <__cxa_finalize@plt+0x11bd100>\n+\tblx\t11be116 <__cxa_finalize@plt+0x11bd106>\n+\tblcs\t27de88 <__cxa_finalize@plt+0x27ce78>\n+\tblx\t27de62 <__cxa_finalize@plt+0x27ce52>\n+./src/viewer.c:342\n+\tblgt\t117e120 <__cxa_finalize@plt+0x117d110>\n+\tblne\t117e124 <__cxa_finalize@plt+0x117d114>\n+\tblne\t127de9c <__cxa_finalize@plt+0x127ce8c>\n+\tblgt\t127dea4 <__cxa_finalize@plt+0x127ce94>\n+./src/viewer.c:341\n+\tbleq\tff13e24c <__cxa_finalize@plt+0xff13d23c>\n+./src/viewer.c:342\n+\tblmi\t117e134 <__cxa_finalize@plt+0x117d124>\n+\tblmi\t127de84 <__cxa_finalize@plt+0x127ce74>\n+./src/viewer.c:343\n+\tblcc\t123e13c <__cxa_finalize@plt+0x123d12c>\n+\tblcc\t27de9c <__cxa_finalize@plt+0x27ce8c>\n+./src/viewer.c:341\n+\tblcs\tff0be260 <__cxa_finalize@plt+0xff0bd250>\n+./src/viewer.c:342\n+\tblgt\tff33e164 <__cxa_finalize@plt+0xff33d154>\n+\tblcs\tff07e168 <__cxa_finalize@plt+0xff07d158>\n+./src/viewer.c:341\n+\tblx\tff3fe16e <__cxa_finalize@plt+0xff3fd15e>\n+\tbeq\tefddc8 <__cxa_finalize@plt+0xefcdb8>\n+\tbcs\tfbddcc <__cxa_finalize@plt+0xfbcdbc>\n+./src/viewer.c:342\n+\tbcs\tf3dcd0 <__cxa_finalize@plt+0xf3ccc0>\n+\tbgt\tffdcd4 <__cxa_finalize@plt+0xffccc4>\n+\tblmi\tff13e180 <__cxa_finalize@plt+0xff13d170>\n+./src/viewer.c:341\n+\tblx\t107dcdc <__cxa_finalize@plt+0x107cccc>\n+./src/viewer.c:343\n+\tblcc\tff0fe188 <__cxa_finalize@plt+0xff0fd178>\n+./src/viewer.c:342\n+\tbmi\t10bdce4 <__cxa_finalize@plt+0x10bccd4>\n+./src/viewer.c:343\n+\tbcc\t10fdce8 <__cxa_finalize@plt+0x10fccd8>\n+./src/viewer.c:441\n+\t\t\t@ instruction: 0xf47f2a00\n+\t\t\t@ instruction: 0x4630adf1\n+./src/viewer.c:452\n+\tldc2\t0, cr15, [ip], {1}\n+./src/trigonometry.h:76\n+\tbvc\t3fde38 <__cxa_finalize@plt+0x3fce28>\n+./src/viewer.c:452\n+\tbeq\ta7dcfc <__cxa_finalize@plt+0xa7ccec>\n+\tbeq\tabde00 <__cxa_finalize@plt+0xabcdf0>\n+./src/trigonometry.h:76\n+\tbvc\tff9fdf50 <__cxa_finalize@plt+0xff9fcf40>\n+\tbvc\t3bde48 <__cxa_finalize@plt+0x3bce38>\n+./src/viewer.c:452\n+\tbne\tafdd0c <__cxa_finalize@plt+0xafccfc>\n+./src/trigonometry.h:76\n+\tbvc\t19fdedc <__cxa_finalize@plt+0x19fcecc>\n+\t\t\t@ instruction: 0xf04fe67e\n+./src/viewer.c:455 (discriminator 2)\n+\t\t\t@ instruction: 0xe6a633ff\n+./src/viewer.c:404\n+\tblmi\t254f08 <__cxa_finalize@plt+0x253ef8>\n+\tldmpl\tr3, {r1, r3, r4, r5, r6, sl, lr}^\n+./src/viewer.c:457\n+\tblls\t13dc758 <__cxa_finalize@plt+0x13db748>\n+\t\t\t@ instruction: 0xf04f405a\n+\tmrsle\tr0, LR_abt\n+\tldc\t0, cr11, [sp], #324\t@ 0x144\n+\tpop\t{r4, r8, r9, fp, pc}\n+\t\t\t@ instruction: 0xf7fe8ff0\n+\tsvclt\t0x0000ec22\n+\tandeq\tsp, r1, ip, ror #15\n \tandeq\tr0, r0, r4, lsl r1\n-\tandeq\tsp, r1, lr, asr sp\n-surface_print():\n-./src/surface.c:207\n-\tsvcmi\t0x00f0e92d\n-\tstcpl\t4, cr15, [r0], {79}\t@ 0x4f\n-\t\t\t@ instruction: 0x0c0cebad\n-\tsvceq\t0x00b8f8cc\n-\taddlt\tr4, r9, r0, asr #20\n-\tldrbtmi\tr4, [sl], #-2880\t@ 0xfffff4c0\n-\tldrdls\tpc, [r0, -pc]\n-\tldmpl\tr3, {r0, r3, r4, r5, r6, r7, sl, lr}^\n-\tmovwls\tr6, #30747\t@ 0x781b\n+get_current_useconds():\n+./src/viewer.c:306\n+\tvst3.8\t{d27,d29,d31}, [pc], r0\n+\tbl\tfeb59918 <__cxa_finalize@plt+0xfeb58908>\n+\t\t\t@ instruction: 0xf8cc0c0c\n+\tbmi\t5466a0 <__cxa_finalize@plt+0x545690>\n+\tblmi\t56e940 <__cxa_finalize@plt+0x56d930>\n+./src/viewer.c:310\n+\tldrbtmi\tr2, [sl], #-256\t@ 0xffffff00\n+\tldmpl\tr3, {r3, r5, r6, r9, sl, lr}^\n+./src/viewer.c:306\n+\tmovwls\tr6, #22555\t@ 0x581b\n \tmovweq\tpc, #79\t@ 0x4f\t@ \n-./src/surface.c:208 (discriminator 1)\n-\tblcs\t1c604 <__cxa_finalize@plt+0x1b5f4>\n-\tblmi\tf36768 <__cxa_finalize@plt+0xf35758>\n-./src/surface.c:222\n-\tblpl\tff4ffef0 <__cxa_finalize@plt+0xff4feee0>\n-\tbleq\t18bf0e8 <__cxa_finalize@plt+0x18be0d8>\n-\tstrmi\tr4, [r0], sp, lsl #12\n-./src/surface.c:208\n-\tldrbtmi\tr2, [fp], #-1792\t@ 0xfffff900\n-./src/surface.c:225\n-\tstmdavs\tfp!, {r0, r1, r8, r9, ip, pc}^\n-./src/surface.c:210\n-\t\t\t@ instruction: 0xf04f2400\n-./src/surface.c:212\n-\tstmdblt\tr3, {r2, r3, r9, fp}^\n-./src/surface.c:210 (discriminator 1)\n-\tstrbmi\tlr, [r1], -fp, asr #32\n-./src/surface.c:229\n-\t\t\t@ instruction: 0xf7fe4630\n-\tstmdavs\tfp!, {r1, r3, r5, r7, sl, fp, sp, lr, pc}^\n-./src/surface.c:210 (discriminator 2)\n-\tadcmi\tr3, r3, #16777216\t@ 0x1000000\n-./src/surface.c:210 (discriminator 1)\n-\tblx\t1f8b1a <__cxa_finalize@plt+0x1f7b0a>\n-./src/surface.c:212\n-\tstmibvs\tsl!, {r0, r1, r8, r9, lr}\n-\tmovwcs\tpc, #15114\t@ 0x3b0a\t@ \n-./src/surface.c:213\n-\tldmdbvc\tlr, {r3, r4, r7, fp, sp, lr}\n-\tstmdacs\tr0, {r0, ip, sp}\n-./src/surface.c:215\n-\tblmi\tb39dd4 <__cxa_finalize@plt+0xb38dc4>\n-./src/surface.c:215 (discriminator 1)\n-\tandcc\tpc, r3, r9, asr r8\t@ \n-\taddmi\tr6, r3, #1769472\t@ 0x1b0000\n-\tblmi\tab9dc8 <__cxa_finalize@plt+0xab8db8>\n-./src/surface.c:215 (discriminator 2)\n-\tandcc\tpc, r3, r9, asr r8\t@ \n-\taddmi\tr6, r3, #1769472\t@ 0x1b0000\n-\tbge\t1b9dbc <__cxa_finalize@plt+0x1b8dac>\n-./src/surface.c:219\n-\ttstpeq\tsl, #1073741827\t@ p-variant is OBSOLETE\t@ 0x40000003\n-\ttstpeq\tr6, sp, lsl #2\t@ p-variant is OBSOLETE\n-\t\t\t@ instruction: 0xf7feb200\n-\t\t\t@ instruction: 0xf9bdec8e\n-./src/surface.c:222\n-\t\t\t@ instruction: 0xf9bd1018\n-./src/surface.c:221\n-\t\t\t@ instruction: 0x4640c016\n-./src/surface.c:225\n-\tstrcc\tr9, [r1], #-1537\t@ 0xfffff9ff\n-./src/surface.c:223\n-\t\t\t@ instruction: 0x601af9bd\n-./src/surface.c:222\n-\tsmlabtcs\tr1, r1, fp, lr\n-./src/surface.c:221\n-\t\t\t@ instruction: 0x2c0cebcc\n-./src/surface.c:222\n-\tbl\tff188590 <__cxa_finalize@plt+0xff187580>\n-./src/surface.c:223\n-\tblx\tfe2cbe82 <__cxa_finalize@plt+0xfe2cae72>\n-./src/surface.c:222\n-\tblx\tfe2caa72 <__cxa_finalize@plt+0xfe2c9a62>\n-./src/surface.c:221\n-\tb\t13faea0 <__cxa_finalize@plt+0x13f9e90>\n-\tbl\tff0e1a24 <__cxa_finalize@plt+0xff0e0a14>\n-./src/surface.c:225\n-\tstmdbls\tr3, {r0, r5, r7, r8, r9, ip}\n-\tadcne\tlr, r2, #204, 22\t@ 0x33000\n-./src/surface.c:223\n-\t\t\t@ instruction: 0xec06fb8b\n-\tbl\tff18865c <__cxa_finalize@plt+0xff18764c>\n-\tstrls\tr1, [r0], -ip, lsr #13\n-./src/surface.c:225\n-\tmcrr\t7, 15, pc, ip, cr14\t@ \n-./src/surface.c:210 (discriminator 1)\n-\tadcmi\tr6, r3, #7012352\t@ 0x6b0000\n-\t\t\t@ instruction: 0x4641d8bb\n-./src/surface.c:232\n-\t\t\t@ instruction: 0xf7fe200a\n-\tstmdavs\tfp!, {r1, r2, r3, r4, r6, sl, fp, sp, lr, pc}\n-./src/surface.c:208 (discriminator 2)\n-\tadcsmi\tr3, fp, #262144\t@ 0x40000\n-./src/surface.c:208 (discriminator 1)\n-\tbmi\t378938 <__cxa_finalize@plt+0x377928>\n-./src/surface.c:234\n+./src/viewer.c:310\n+\tbl\t17c0730 <__cxa_finalize@plt+0x17bf720>\n+./src/viewer.c:311\n+\tvadd.i8\td25, d4, d0\n+\tvqdmlal.s\tq9, d0, d0[0]\n+\tbls\t83380 <__cxa_finalize@plt+0x82370>\n+\tsmlatbeq\tr3, r0, fp, pc\t@ \n+./src/viewer.c:312\n+\tbls\t4894c <__cxa_finalize@plt+0x4793c>\n+./src/viewer.c:311\n+\ttstpne\tr2, r3, lsl #22\t@ p-variant is OBSOLETE\n+./src/viewer.c:312\n+\tbmi\t2a9360 <__cxa_finalize@plt+0x2a8350>\n+\ttsteq\tr3, r1, asr #22\n+./src/viewer.c:315\n \tldrbtmi\tr4, [sl], #-2823\t@ 0xfffff4f9\n \tldmdavs\tsl, {r0, r1, r4, r6, r7, fp, ip, lr}\n-\tsubsmi\tr9, sl, r7, lsl #22\n+\tsubsmi\tr9, sl, r5, lsl #22\n \tmovweq\tpc, #79\t@ 0x4f\t@ \n-\tandlt\tsp, r9, r2, lsl #2\n-\tsvchi\t0x00f0e8bd\n-\tmcrr\t7, 15, pc, r4, cr14\t@ \n-\tandeq\tsp, r1, r2, lsl r9\n+\tandlt\tsp, r7, r2, lsl #2\n+\tblx\t1408e6 <__cxa_finalize@plt+0x13f8d6>\n+\tbl\tffac076c <__cxa_finalize@plt+0xffabf75c>\n+\tandeq\tsp, r1, lr, lsr #15\n \tandeq\tr0, r0, r4, lsl r1\n-\tandeq\tsp, r1, ip, lsl #18\n-\tandeq\tr2, r0, lr, lsl sl\n-\tandeq\tr0, r0, r0, lsr #2\n-\tandeq\tr0, r0, r0, lsl #2\n-\tandeq\tsp, r1, lr, lsr #16\n-surface_printw():\n-./src/surface.c:237\n-\tsvcmi\t0x00f0e92d\n-\tstcpl\t4, cr15, [r0], {79}\t@ 0x4f\n-\t\t\t@ instruction: 0x0c0cebad\n-\tsvceq\t0x00d0f8cc\n-./src/surface.c:238 (discriminator 1)\n-\taddlt\tr6, r3, r3, lsl #16\n-./src/surface.c:237\n-\tldrbtmi\tr4, [pc], #-3885\t@ 26f4 <__cxa_finalize@plt+0x16e4>\n-./src/surface.c:238 (discriminator 1)\n-\tsubsle\tr2, r4, r0, lsl #22\n-\t\t\t@ instruction: 0xf04f4b2c\n-./src/surface.c:238\n-\tbmi\tb04f00 <__cxa_finalize@plt+0xb03ef0>\n-./src/surface.c:249\n-\t\t\t@ instruction: 0xf8df4605\n-./src/surface.c:254\n-\t\t\t@ instruction: 0x46d390b0\n-./src/surface.c:249\n-\tandls\tr4, r1, #2046820352\t@ 0x7a000000\n-\tldrbtmi\tr5, [r9], #2299\t@ 0x8fb\n-./src/surface.c:254\n-\tblls\t27314 <__cxa_finalize@plt+0x26304>\n-./src/surface.c:240\n-\tldrbmi\tr2, [r9], -r0, lsl #4\n-./src/surface.c:241\n-\t\t\t@ instruction: 0xf04f2400\n-./src/surface.c:243\n-\tldmdavs\tr8, {r2, r3, fp}\n-./src/surface.c:240\n-\tbl\tffec071c <__cxa_finalize@plt+0xffebf70c>\n-./src/surface.c:241 (discriminator 1)\n-\tldmdblt\tr2!, {r1, r3, r5, r6, fp, sp, lr}\n-\t\t\t@ instruction: 0xf7fee036\n-./src/surface.c:254\n-\tstmdavs\tsl!, {r3, r8, r9, fp, sp, lr, pc}^\n-./src/surface.c:241 (discriminator 2)\n-\tadcmi\tr3, r2, #16777216\t@ 0x1000000\n-./src/surface.c:241 (discriminator 1)\n-\tblx\t2f8bfa <__cxa_finalize@plt+0x2f7bea>\n-./src/surface.c:243\n-\tstmibvs\tfp!, {r1, r9, lr}\n-./src/surface.c:246 (discriminator 1)\n-\tldrsbtgt\tpc, [r8], #-143\t@ 0xffffff71\t@ \n-./src/surface.c:254\n-\tblx\t214066 <__cxa_finalize@plt+0x213056>\n-./src/surface.c:243\n-\tldmvs\tsl, {r1, r8, r9, ip, sp}\n-./src/surface.c:249\n-\tandcc\tr7, r1, #491520\t@ 0x78000\n-./src/surface.c:254\n-\tbcs\t14014 <__cxa_finalize@plt+0x13004>\n-./src/surface.c:246\n-\t\t\t@ instruction: 0xf857ddeb\n-./src/surface.c:246 (discriminator 1)\n-\t\t\t@ instruction: 0xf8df300c\n-./src/surface.c:246 (discriminator 2)\n-\tldmdavs\tfp, {r2, r5, r6, sp, lr, pc}\n-./src/surface.c:246 (discriminator 1)\n-\tstclle\t2, cr4, [r4, #588]!\t@ 0x24c\n-./src/surface.c:246 (discriminator 2)\n-\tandcc\tpc, lr, r7, asr r8\t@ \n-\taddsmi\tr6, r3, #1769472\t@ 0x1b0000\n-\tandseq\tsp, r3, #14272\t@ 0x37c0\n-./src/surface.c:248\n-\tstrcc\tr9, [r1], #-2560\t@ 0xfffff600\n-\tblx\tfe100ff0 <__cxa_finalize@plt+0xfe0fffe0>\n-\t\t\t@ instruction: 0x46516810\n-\t\t\t@ instruction: 0xf7fe2200\n-\t\t\t@ instruction: 0x4631ec10\n-./src/surface.c:249\n-\t\t\t@ instruction: 0xf7fe9801\n-\tblls\t3d2f8 <__cxa_finalize@plt+0x3c2e8>\n-./src/surface.c:250\n-\tldrbmi\tr2, [r1], -r0, lsl #4\n-\t\t\t@ instruction: 0xf7fe6818\n-\tstmdavs\tsl!, {r2, r4, r5, r6, r7, r9, fp, sp, lr, pc}^\n-./src/surface.c:241 (discriminator 1)\n-\tstmiale\tlr, {r1, r5, r7, r9, lr}^\n-./src/surface.c:238 (discriminator 1)\n-\t\t\t@ instruction: 0xf10b682b\n-./src/surface.c:238 (discriminator 2)\n-\tldrbmi\tr0, [fp, #-2817]\t@ 0xfffff4ff\n-./src/surface.c:238 (discriminator 1)\n-\t\t\t@ instruction: 0xb003d8b7\n-./src/surface.c:258\n-\tsvchi\t0x00f0e8bd\n-\tandeq\tsp, r1, r2, ror #15\n-\tandeq\tr0, r0, r0, lsl r1\n-\tandeq\tr2, r0, r8, lsl r9\n-\tandeq\tr2, r0, r2, lsl r9\n-\tandeq\tr0, r0, r0, lsr #2\n-\tandeq\tr0, r0, r0, lsl #2\n+\tandeq\tsp, r1, sl, ror r7\n+init_file_extension():\n+./src/viewer.c:518\n+\tvst3.\t{d27,d29,d31}, [pc :256], r8\n+\tbl\tfeb59988 <__cxa_finalize@plt+0xfeb58978>\n+\t\t\t@ instruction: 0xf8cc0c0c\n+\tstrmi\tr0, [r5], -r8, ror #31\n+\tmovwcs\tr4, #1550\t@ 0x60e\n+./src/viewer.c:522\n+\tldrtmi\tr2, [r0], -lr, lsr #2\n+./src/viewer.c:520\n+\t\t\t@ instruction: 0x712b602b\n+./src/viewer.c:522\n+\tbl\tdc0798 <__cxa_finalize@plt+0xdbf788>\n+./src/viewer.c:523\n+\tsvclt\t0x00184286\n+\tandle\tr2, lr, r0, lsl #16\n+\tstccc\t6, cr4, [r1, #-16]\n+\t\t\t@ instruction: 0xf8141d07\n+./src/viewer.c:529\n+\tcmplt\tr6, r1, lsl #30\n+./src/viewer.c:531 (discriminator 2)\n+\tbl\t1ec07b0 <__cxa_finalize@plt+0x1ebf7a0>\n+./src/viewer.c:531 (discriminator 1)\n+\tadcsmi\tr6, ip, #196608\t@ 0x30000\n+./src/viewer.c:531 (discriminator 9)\n+\teorcc\tpc, r6, r3, asr r8\t@ \n+\tsvccc\t0x0001f805\n+./src/viewer.c:527 (discriminator 1)\n+\tldcllt\t1, cr13, [r8, #972]!\t@ 0x3cc\n+get_bounding_box_center():\n+./src/trigonometry.c:4\n+\tstmdbcs\tr0, {r3, r7, ip, sp, pc}\n+./src/trigonometry.c:8\n+\tandcs\tsp, ip, #5248\t@ 0x1480\n+./src/trigonometry.c:10\n+\tbpl\t3df14 <__cxa_finalize@plt+0x3cf04>\n+\tbvs\t7de18 <__cxa_finalize@plt+0x7ce08>\n+\tldc\t6, cr4, [r0, #12]\n+\tblx\t88fea <__cxa_finalize@plt+0x87fda>\n+./src/trigonometry.c:14 (discriminator 1)\n+\tcdp\t1, 11, cr0, cr0, cr1, {0}\n+./src/trigonometry.c:10\n+\tvmov.f32\ts1, s11\n+\tvmov.f32\ts0, s12\n+\tvldr\ts11, [r3, #260]\t@ 0x104\n+./src/trigonometry.c:16\n+\tmovwcc\tr6, #51712\t@ 0xca00\n+\tbvc\tbdc44 <__cxa_finalize@plt+0xbcc34>\n+\tbvc\t7dd48 <__cxa_finalize@plt+0x7cd38>\n+./src/trigonometry.c:18\n+\tbvs\tff97e3d0 <__cxa_finalize@plt+0xff97d3c0>\n+\tblx\t43e3c8 <__cxa_finalize@plt+0x43d3b8>\n+\tbvc\tff1be2d8 <__cxa_finalize@plt+0xff1bd2c8>\n+\tcdp\t15, 15, cr11, cr0, cr8, {2}\n+\tvneg.f32\ts11, s13\n+./src/trigonometry.c:20\n+\tvmrs\tpc, \n+\tsvclt\t0x00487ac1\n+\tbvs\t11fe2dc <__cxa_finalize@plt+0x11fd2cc>\n+./src/trigonometry.c:22\n+\tblx\t43e3e4 <__cxa_finalize@plt+0x43d3d4>\n+\tbvs\tff03e3f4 <__cxa_finalize@plt+0xff03d3e4>\n+\tcdp\t15, 11, cr11, cr0, cr8, {2}\n+\tvneg.f32\ts3, s15\n+./src/trigonometry.c:25\n+\tmrc\t10, 5, APSR_nzcv, cr4, cr0, {0}\n+\tsvclt\t0x00c87ae0\n+\tbeq\t19be2f8 <__cxa_finalize@plt+0x19bd2e8>\n+./src/trigonometry.c:27\n+\tblx\t43e400 <__cxa_finalize@plt+0x43d3f0>\n+\tbvc\tff17e410 <__cxa_finalize@plt+0xff17d400>\n+\tcdp\t15, 15, cr11, cr0, cr8, {6}\n+\tvneg.f32\ts1, s14\n+./src/trigonometry.c:29\n+\tsvclt\t0x00c8fa10\n+\tbpl\t19fe310 <__cxa_finalize@plt+0x19fd300>\n+./src/trigonometry.c:14 (discriminator 1)\n+\tbicle\tr4, ip, fp, lsl #5\n+./src/trigonometry.c:34\n+\tbeq\t97e118 <__cxa_finalize@plt+0x97d108>\n+./src/trigonometry.c:35\n+\tbeq\tfe1be21c <__cxa_finalize@plt+0xfe1bd20c>\n+./src/trigonometry.c:36\n+\tbne\t17e124 <__cxa_finalize@plt+0x17d114>\n+./src/trigonometry.c:34\n+\tbvc\t3e43c <__cxa_finalize@plt+0x3d42c>\n+\tbeq\t9fe0e8 <__cxa_finalize@plt+0x9fd0d8>\n+./src/trigonometry.c:35\n+\tbeq\tfe9fe1ec <__cxa_finalize@plt+0xfe9fd1dc>\n+./src/trigonometry.c:36\n+\tbne\t9fe0f4 <__cxa_finalize@plt+0x9fd0e4>\n+./src/trigonometry.c:39\n+\tldrbmi\tfp, [r0, -r8]!\n+\tbne\tfdef4 <__cxa_finalize@plt+0xfcee4>\n+\tbeq\t107e43c <__cxa_finalize@plt+0x107d42c>\n+\tbeq\t107e340 <__cxa_finalize@plt+0x107d330>\n+\tldrbmi\tfp, [r0, -r8]!\n+\tandeq\tr0, r0, r0\n+get_max_dist():\n+./src/trigonometry.c:42\n+\tstmdbcs\tr0, {r2, r7, ip, sp, pc}\n+./src/trigonometry.c:45 (discriminator 1)\n+\tmovwcs\tsp, #52521\t@ 0xcd29\n+./src/trigonometry.c:43\n+\tbvs\t63df10 <__cxa_finalize@plt+0x63cf00>\n+\ttstpeq\tr1, r3, lsl #22\t@ p-variant is OBSOLETE\n+./src/trigonometry.c:48\n+\tbvc\t7dfdc <__cxa_finalize@plt+0x7cfcc>\n+./src/trigonometry.c:45 (discriminator 1)\n+\tldcl\t0, cr3, [r0, #-48]\t@ 0xffffffd0\n+./src/trigonometry.c:48\n+\tvldr\ts12, [r0, #-12]\n+\tvadd.f32\ts15, s14, s2\n+\tvsub.f32\ts15, s13, s1\n+\tvsub.f32\ts12, s15, s0\n+\tvnmul.f32\ts15, s14, s2\n+\tvmla.f32\ts15, s13, s15\n+\tvmla.f32\ts15, s15, s13\n+\tvmov.f32\ts15, #71\t@ 0x3e380000 0.1796875\n+./src/trigonometry.c:50\n+\tvsqrt.f32\ts15, s12\n+\tsvclt\t0x00c8fa10\n+\tbvs\t19fe38c <__cxa_finalize@plt+0x19fd37c>\n+./src/trigonometry.c:45 (discriminator 1)\n+\tmvnle\tr4, r1, lsl #5\n+./src/trigonometry.c:54\n+\tbvs\t103e3a8 <__cxa_finalize@plt+0x103d398>\n+\tblx\t43e49c <__cxa_finalize@plt+0x43d48c>\n+\tcdp\t4, 11, cr13, cr1, cr7, {0}\n+\tandlt\tr0, r4, r6, asr #21\n+./src/trigonometry.c:55\n+\tldc\t7, cr4, [pc, #448]\t@ 2aa4 <__cxa_finalize@plt+0x1a94>\n+./src/trigonometry.c:45 (discriminator 1)\n+\tandlt\tr0, r4, r4, lsl #20\n+./src/trigonometry.c:55\n+\tmrc\t7, 5, r4, cr0, cr0, {3}\n+./src/trigonometry.c:54\n+\tandlt\tr0, r4, r6, asr #20\n+\tblt\t13c08ec <__cxa_finalize@plt+0x13bf8dc>\n+\tandeq\tr0, r0, r0\n str_chop():\n ./src/model.c:244\n \tvst3.8\t{d27,d29,d31}, [pc :256], r8\n-\tbl\tfeb599c8 <__cxa_finalize@plt+0xfeb589b8>\n+\tbl\tfeb59b00 <__cxa_finalize@plt+0xfeb58af0>\n \t\t\t@ instruction: 0xf8cc0c0c\n \tstmdavc\tfp, {r4, r5, r6, r7, r8, r9, sl, fp}\n \tstmdavs\tr0, {r0, r2, r9, sl, lr}\n ./src/model.c:249\n \tstrmi\tfp, [r4], fp, asr #3\n ./src/model.c:251\n \t\t\t@ instruction: 0xf81cb180\n@@ -2197,92 +2316,92 @@\n ./src/model.c:256\n \tldrmi\tlr, [lr, #2]\n \tmrrcne\t1, 15, sp, r3, cr7\n ./src/model.c:263\n \tteqlt\tr4, ip, asr #25\n \t\t\t@ instruction: 0xf81c461a\n ./src/model.c:254\n-\tblcs\t113fc <__cxa_finalize@plt+0x103ec>\n+\tblcs\t11534 <__cxa_finalize@plt+0x10524>\n \tstrdvs\tsp, [fp], -r3\t@ \n ./src/model.c:274\n \tbicsmi\tfp, r2, #56, 26\t@ 0xe00\n ./src/model.c:261\n \t\t\t@ instruction: 0xf80c4663\n ./src/model.c:265\n \teorvs\tr4, fp, r2\n ./src/model.c:272\n-\tblmi\t13c7ec <__cxa_finalize@plt+0x13b7dc>\n+\tblmi\t13c924 <__cxa_finalize@plt+0x13b914>\n ./src/model.c:249 (discriminator 1)\n \tstmdbmi\tr4, {r0, r3, r4, r5, r6, r7, r9, sp}\n \tldrbtmi\tr4, [fp], #-2052\t@ 0xfffff7fc\n \tldrbtmi\tr4, [r8], #-1145\t@ 0xfffffb87\n-\tb\tfffc0814 <__cxa_finalize@plt+0xfffbf804>\n-\tmuleq\tr0, lr, r4\n-\tandeq\tr2, r0, r0, lsl r8\n-\tandeq\tr2, r0, sl, lsl r8\n+\tb\t18c094c <__cxa_finalize@plt+0x18bf93c>\n+\tandeq\tr3, r0, r6, asr r3\n+\tldrdeq\tr2, [r0], -r4\n+\tldrdeq\tr2, [r0], -lr\n model_init():\n ./src/model.c:13\n \tvst3.\t{d27,d29,d31}, [pc :256], r8\n-\tbl\tfeb59a30 <__cxa_finalize@plt+0xfeb58a20>\n+\tbl\tfeb59b68 <__cxa_finalize@plt+0xfeb58b58>\n \t\t\t@ instruction: 0xf8cc0c0c\n \teorcs\tr0, r4, r8, ror #31\n \t\t\t@ instruction: 0xf7fe4d19\n ./src/model.c:14\n-\t\t\t@ instruction: 0x4604eb7a\n+\t\t\t@ instruction: 0x4604eade\n ./src/model.c:16\n \tandscs\tr2, r0, r1, lsl #12\n ./src/model.c:13\n \t\t\t@ instruction: 0x6126447d\n ./src/model.c:17\n-\tbl\t1cc0844 <__cxa_finalize@plt+0x1cbf834>\n+\tb\tff5c097c <__cxa_finalize@plt+0xff5bf96c>\n ./src/model.c:17 (discriminator 1)\n \torrslt\tr6, r0, r0, ror #2\n ./src/model.c:25\n \tstrcs\tr2, [r0, -ip]\n ./src/model.c:24\n \trscvs\tr6, r7, r6, rrx\n ./src/model.c:25\n-\tbl\t1ac0854 <__cxa_finalize@plt+0x1abf844>\n+\tb\tff3c098c <__cxa_finalize@plt+0xff3bf97c>\n ./src/model.c:25 (discriminator 1)\n \tbicslt\tr6, r0, r0, lsr #1\n ./src/model.c:33\n \taddvc\tpc, r6, pc, asr #8\n ./src/model.c:30\n \tmvnvs\tr6, r7, lsr #32\n ./src/model.c:33\n-\tbl\t18c0864 <__cxa_finalize@plt+0x18bf854>\n+\tb\tff1c099c <__cxa_finalize@plt+0xff1bf98c>\n ./src/model.c:33 (discriminator 1)\n \tcmnlt\tr0, r0, lsr #4\n ./src/model.c:41\n \t\t\t@ instruction: 0x61a74620\n \tstmdami\tfp, {r3, r4, r5, r6, r7, r8, sl, fp, ip, sp, pc}\n ./src/model.c:19\n \tldrbtmi\tr4, [r8], #-2827\t@ 0xfffff4f5\n ./src/model.c:27\n \teorcs\tr5, r2, #15400960\t@ 0xeb0000\n \tldmdavs\tfp, {r0, r4, r5, r9, sl, lr}\n-\tbl\t10c0880 <__cxa_finalize@plt+0x10bf870>\n+\tb\tfe9c09b8 <__cxa_finalize@plt+0xfe9bf9a8>\n ./src/model.c:28\n \t\t\t@ instruction: 0xf7fe4630\n-\tstmdami\tr7, {r3, r4, r5, r7, r8, r9, fp, sp, lr, pc}\n+\tstmdami\tr7, {r2, r3, r4, r8, r9, fp, sp, lr, pc}\n ./src/model.c:35\n \tldrbtmi\tr4, [r8], #-2821\t@ 0xfffff4fb\n \tstmdami\tr6, {r1, r4, r5, r6, r7, r8, r9, sl, sp, lr, pc}\n ./src/model.c:27\n \tldrbtmi\tr4, [r8], #-2819\t@ 0xfffff4fd\n \tsvclt\t0x0000e7ee\n-\tmuleq\tr1, r0, r6\n-\tandeq\tr2, r0, r2, ror #14\n+\tandeq\tsp, r1, r8, asr r5\n+\tandeq\tr2, r0, sl, lsl #31\n \tandeq\tr0, r0, ip, lsl r1\n-\tandeq\tr2, r0, sl, asr #14\n-\tandeq\tr2, r0, r2, asr #14\n+\tandeq\tr2, r0, r2, ror pc\n+\tandeq\tr2, r0, sl, ror #30\n model_add_vertex():\n ./src/model.c:44\n \tvst3.8\t{d27,d29,d31}, [pc :256], r0\n-\tbl\tfeb59abc <__cxa_finalize@plt+0xfeb58aac>\n+\tbl\tfeb59bf4 <__cxa_finalize@plt+0xfeb58be4>\n \t\t\t@ instruction: 0xf8cc0c0c\n \taddlt\tr0, r5, r0, ror #31\n \tldmib\tr0, {r3, r4, r8, sl, fp, lr}^\n ./src/model.c:45\n \tstrmi\tr2, [r4], -r0, lsl #6\n ./src/model.c:44\n \tstmvs\tr0, {r0, r2, r3, r4, r5, r6, sl, lr}\n@@ -2299,33 +2418,33 @@\n \tstm\tr3, {r0, r1, r2}\n \teorvs\tr0, r5, r7\n ./src/model.c:57\n \tldclt\t0, cr11, [r0, #-20]!\t@ 0xffffffec\n ./src/model.c:48\n \tsubseq\tr2, r3, r8, lsl r1\n ./src/model.c:47\n-\tblx\t9aa8e <__cxa_finalize@plt+0x99a7e>\n+\tblx\t9abc6 <__cxa_finalize@plt+0x99bb6>\n ./src/model.c:48\n \t\t\t@ instruction: 0xf7fef101\n-\tadcvs\tlr, r0, r4, ror #22\n+\tadcvs\tlr, r0, r8, asr #21\n ./src/model.c:48 (discriminator 1)\n \tstmdavs\tr2!, {r3, r8, ip, sp, pc}\n ./src/model.c:55\n-\tblmi\t1fc8b0 <__cxa_finalize@plt+0x1fb8a0>\n+\tblmi\t1fc9e8 <__cxa_finalize@plt+0x1fb9d8>\n ./src/model.c:50\n \tstmdami\tr7, {r1, r5, r9, sp}\n \tldrbtmi\tr2, [r8], #-257\t@ 0xfffffeff\n \tldmdavs\tfp, {r0, r1, r3, r5, r6, r7, fp, ip, lr}\n-\tb\tffdc0918 <__cxa_finalize@plt+0xffdbf908>\n+\tb\t16c0a50 <__cxa_finalize@plt+0x16bfa40>\n ./src/model.c:51\n \t\t\t@ instruction: 0xf7fe2001\n-\tsvclt\t0x0000eb6c\n-\tandeq\tsp, r1, r8, lsl #12\n+\tsvclt\t0x0000ead0\n+\tldrdeq\tsp, [r1], -r0\n \tandeq\tr0, r0, ip, lsl r1\n-\tandeq\tr2, r0, r6, asr #13\n+\tandeq\tr2, r0, lr, ror #29\n model_add_face():\n ./src/model.c:93\n \tmvnsmi\tlr, #737280\t@ 0xb4000\n \tstcpl\t4, cr15, [r0], {79}\t@ 0x4f\n \t\t\t@ instruction: 0x0c0cebad\n \tsvceq\t0x00e0f8cc\n \t\t\t@ instruction: 0xf8df461e\n@@ -2349,30 +2468,30 @@\n \trscvs\tr3, r5, ip\n ./src/model.c:109\n \tmvnshi\tlr, #12386304\t@ 0xbd0000\n ./src/model.c:96\n \tcmneq\tr9, fp, rrx\n \t\t\t@ instruction: 0xf7fe6123\n ./src/model.c:97\n-\tcmnvs\tr0, r6, lsr #22\n+\tcmnvs\tr0, sl, lsl #21\n ./src/model.c:97 (discriminator 1)\n \tstmiavs\tr5!, {r3, r8, ip, sp, pc}^\n ./src/model.c:103\n-\tblmi\t1fc92c <__cxa_finalize@plt+0x1fb91c>\n+\tblmi\t1fca64 <__cxa_finalize@plt+0x1fba54>\n ./src/model.c:99\n \tstmdami\tr7, {r1, r5, r9, sp}\n \tldrbtmi\tr2, [r8], #-257\t@ 0xfffffeff\n \tandcc\tpc, r3, r9, asr r8\t@ \n \t\t\t@ instruction: 0xf7fe681b\n-\t\t\t@ instruction: 0x2001eab8\n+\tandcs\tlr, r1, ip, lsl sl\n ./src/model.c:100\n-\tbl\tb4099c <__cxa_finalize@plt+0xb3f98c>\n-\tandeq\tsp, r1, r4, lsl #11\n+\tb\tfe440ad4 <__cxa_finalize@plt+0xfe43fac4>\n+\tandeq\tsp, r1, ip, asr #8\n \tandeq\tr0, r0, ip, lsl r1\n-\tandeq\tr2, r0, sl, asr #12\n+\tandeq\tr2, r0, r2, ror lr\n model_validate_idxs.isra.0():\n ./src/model.c:73\n \tsvcmi\t0x00f8e92d\n \tstcpl\t4, cr15, [r0], {79}\t@ 0x4f\n \t\t\t@ instruction: 0x0c0cebad\n \tsvceq\t0x00d8f8cc\n ./src/model.c:77 (discriminator 1)\n@@ -2383,15 +2502,15 @@\n \t\t\t@ instruction: 0xf8dfb1c3\n ./src/model.c:83\n \t\t\t@ instruction: 0xf04fa050\n ./src/model.c:77\n \tstmdbvs\tr1, {fp}^\n \tldrbtmi\tr4, [sl], #1542\t@ 0x606\n ./src/model.c:85\n-\tb\t13d44e0 <__cxa_finalize@plt+0x13d34d0>\n+\tb\t13d4618 <__cxa_finalize@plt+0x13d3608>\n ./src/model.c:79 (discriminator 1)\n \tstrcs\tr1, [r0], #-1800\t@ 0xfffff8f8\n ./src/model.c:81\n \tldmdavs\tr3!, {r0, r2, r5, r7}\n \tldmibpl\tr2, {r1, r3, r6, r8, fp, ip}^\n \tandle\tr4, r9, #-1610612727\t@ 0xa0000009\n ./src/model.c:79 (discriminator 2)\n@@ -2404,28 +2523,28 @@\n \tstmiale\tlr!, {r0, r1, r6, r8, sl, lr}^\n ./src/model.c:90\n \tsvchi\t0x00f8e8bd\n ./src/model.c:83\n \tldrbmi\tr4, [r1], -r7, lsl #22\n \tandcc\tpc, r3, fp, asr r8\t@ \n \t\t\t@ instruction: 0xf7fe6818\n-\tldmdbvs\tr1!, {r2, r3, r7, r9, fp, sp, lr, pc}^\n+\tldmdbvs\tr1!, {r4, r5, r6, r7, r8, fp, sp, lr, pc}^\n ./src/model.c:85\n \t\t\t@ instruction: 0xf845440d\n \tstrb\tr9, [r9, r7]!\n-\tandeq\tsp, r1, lr, lsl #10\n-\tandeq\tr2, r0, sl, ror #12\n+\tldrdeq\tsp, [r1], -r6\n+\tandeq\tr2, r0, r2, asr lr\n \tandeq\tr0, r0, ip, lsl r1\n parse_float():\n ./src/model.c:289\n \tvst3.16\t{d27,d29,d31}, [pc :256], r0\n-\tbl\tfeb59c2c <__cxa_finalize@plt+0xfeb58c1c>\n+\tbl\tfeb59d64 <__cxa_finalize@plt+0xfeb58d54>\n \t\t\t@ instruction: 0xf8cc0c0c\n-\tbmi\t6869d4 <__cxa_finalize@plt+0x6859c4>\n-\tblmi\t6aec40 <__cxa_finalize@plt+0x6adc30>\n+\tbmi\t686b0c <__cxa_finalize@plt+0x685afc>\n+\tblmi\t6aed78 <__cxa_finalize@plt+0x6add68>\n \tldrbtmi\tr4, [sl], #-1540\t@ 0xfffff9fc\n ./src/model.c:280\n \t\t\t@ instruction: 0x460d4e19\n \tldmpl\tr3, {r1, r2, r3, r4, r5, r6, sl, lr}^\n ./src/model.c:289\n \tmovwls\tr6, #6171\t@ 0x181b\n \tmovweq\tpc, #79\t@ 0x4f\t@ \n@@ -2435,204 +2554,204 @@\n \t\t\t@ instruction: 0x4631b992\n ./src/model.c:280\n \t\t\t@ instruction: 0xf7ff4620\n \t\t\t@ instruction: 0x4603feb3\n ./src/model.c:280 (discriminator 1)\n \tmvnsle\tr2, r0, lsl #16\n ./src/model.c:289\n-\tblmi\t3d52a8 <__cxa_finalize@plt+0x3d4298>\n+\tblmi\t3d53e0 <__cxa_finalize@plt+0x3d43d0>\n \tldmpl\tr3, {r1, r3, r4, r5, r6, sl, lr}^\n ./src/model.c:296\n-\tblls\t5cad4 <__cxa_finalize@plt+0x5bac4>\n+\tblls\t5cc0c <__cxa_finalize@plt+0x5bbfc>\n \t\t\t@ instruction: 0xf04f405a\n \ttstle\tr0, r0, lsl #6\n \tldcllt\t0, cr11, [r0, #-8]!\n ./src/model.c:293\n \tstrbtmi\tr4, [r8], -ip, lsl #18\n ./src/model.c:290 (discriminator 1)\n \tldrbtmi\tr9, [r9], #-768\t@ 0xfffffd00\n ./src/model.c:293\n \tmrc2\t7, 4, pc, cr14, cr15, {7}\n /usr/include/arm-linux-gnueabihf/bits/stdlib-float.h:27\n \t\t\t@ instruction: 0xf7fe2100\n-\t\t\t@ instruction: 0xeeb7e998\n+\tmrc\t8, 5, lr, cr7, cr12, {7}\n ./src/model.c:294 (discriminator 1)\n \tandcs\tr0, r1, r0, asr #23\n-\tbeq\t3e0a8 <__cxa_finalize@plt+0x3d098>\n+\tbeq\t3e1e0 <__cxa_finalize@plt+0x3d1d0>\n ./src/model.c:295\n \t\t\t@ instruction: 0xf7fee7e4\n ./src/model.c:296\n-\tsvclt\t0x0000ea58\n-\tmuleq\tr1, sl, r4\n+\tsvclt\t0x0000e9bc\n+\tandeq\tsp, r1, r2, ror #6\n \tandeq\tr0, r0, r4, lsl r1\n-\tandeq\tr2, r0, r0, lsr #12\n-\tandeq\tsp, r1, r0, ror r4\n-\tandeq\tr2, r0, r6, ror #11\n+\tandeq\tr2, r0, r8, lsl #28\n+\tandeq\tsp, r1, r8, lsr r3\n+\tandeq\tr2, r0, lr, asr #27\n model_get_material_idx():\n ./src/model.c:138\n \tvst3.\t{d27,d29,d31}, [pc :256], r8\n-\tbl\tfeb59cb8 <__cxa_finalize@plt+0xfeb58ca8>\n+\tbl\tfeb59df0 <__cxa_finalize@plt+0xfeb58de0>\n \t\t\t@ instruction: 0xf8cc0c0c\n \tstmibvs\tr7, {r3, r5, r6, r7, r8, r9, sl, fp}\n ./src/model.c:139 (discriminator 1)\n-\tbvs\t16f0e0 <__cxa_finalize@plt+0x16e0d0>\n+\tbvs\t16f218 <__cxa_finalize@plt+0x16e208>\n \tstrcs\tr4, [r0], #-1550\t@ 0xfffff9f2\n ./src/model.c:139\n \tstrcc\tlr, [r1], #-4\n ./src/model.c:139 (discriminator 1)\n \tstrvc\tpc, [r6, #1285]\t@ 0x505\n \t\t\t@ instruction: 0xd00742bc\n ./src/model.c:141\n \t\t\t@ instruction: 0x46284631\n-\tb\tfe2c0ad4 <__cxa_finalize@plt+0xfe2bfac4>\n+\tstmib\tlr!, {r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}^\n ./src/model.c:141 (discriminator 1)\n \tmvnsle\tr2, r0, lsl #16\n ./src/model.c:145\n \tldcllt\t6, cr4, [r8, #128]!\t@ 0x80\n ./src/model.c:144\n-\tldrbtcc\tpc, [pc], #79\t@ 2ae8 <__cxa_finalize@plt+0x1ad8>\t@ \n+\tldrbtcc\tpc, [pc], #79\t@ 2c20 <__cxa_finalize@plt+0x1c10>\t@ \n ./src/model.c:145\n \tldcllt\t6, cr4, [r8, #128]!\t@ 0x80\n model_invert_triangles():\n ./src/model.c:149 (discriminator 1)\n \tsmlalbtlt\tr6, sl, r2, r8\n-\tbl\tdd000 <__cxa_finalize@plt+0xdbff0>\n+\tbl\tdd138 <__cxa_finalize@plt+0xdc128>\n \tldmib\tr3, {r1, ip}^\n ./src/model.c:152\n \tstmib\tr3, {r0, r8, sp}^\n \ttstcc\tr0, #268435456\t@ 0x10000000\n ./src/model.c:149 (discriminator 1)\n \tmvnsle\tr4, r3, lsl #5\n ./src/model.c:155\n \tsvclt\t0x00004770\n model_normalize():\n ./src/model.c:158\n \tvst3.8\t{d27,d29,d31}, [pc :64], r0\n-\tbl\tfeb59d10 <__cxa_finalize@plt+0xfeb58d00>\n+\tbl\tfeb59e48 <__cxa_finalize@plt+0xfeb58e38>\n \t\t\t@ instruction: 0xf8cc0c0c\n \tstrmi\tr0, [r4], -r0, ror #31\n \tstmdavs\tr1, {r1, r2, r7, ip, sp, pc}\n ./src/model.c:159\n-\t\t\t@ instruction: 0xf0016880\n-\tstmdavs\tr1!, {r0, r1, r2, r3, r6, r7, r8, fp, ip, sp, lr, pc}\n+\t\t\t@ instruction: 0xf7ff6880\n+\tstmdavs\tr1!, {r0, r1, r2, r4, r5, r7, r8, sl, fp, ip, sp, lr, pc}\n ./src/model.c:168\n \tstc\t8, cr6, [sp, #640]\t@ 0x280\n ./src/model.c:159\n \tvstr\ts1, [sp]\n \tvstr\ts0, [sp, #4]\n \tbiclt\tr1, r1, r2, lsl #20\n ./src/model.c:161 (discriminator 1)\n \tstrmi\tr2, [r3], -ip, lsl #4\n \tandeq\tpc, r1, #2048\t@ 0x800\n ./src/model.c:163\n-\tbvs\t3e28c <__cxa_finalize@plt+0x3d27c>\n+\tbvs\t3e3c4 <__cxa_finalize@plt+0x3d3b4>\n ./src/model.c:161 (discriminator 1)\n \tldc\t3, cr3, [r3, #-48]\t@ 0xffffffd0\n ./src/model.c:164\n \tvldr\ts15, [r3, #-8]\n ./src/model.c:165\n \taddsmi\tr7, r3, #4096\t@ 0x1000\n ./src/model.c:163\n-\tbvs\tff03e528 <__cxa_finalize@plt+0xff03d518>\n+\tbvs\tff03e660 <__cxa_finalize@plt+0xff03d650>\n ./src/model.c:164\n-\tbvc\t183e430 <__cxa_finalize@plt+0x183d420>\n+\tbvc\t183e568 <__cxa_finalize@plt+0x183d558>\n ./src/model.c:165\n-\tbvc\tff07e534 <__cxa_finalize@plt+0xff07d524>\n+\tbvc\tff07e66c <__cxa_finalize@plt+0xff07d65c>\n ./src/model.c:163\n-\tbvs\tfe068 <__cxa_finalize@plt+0xfd058>\n+\tbvs\tfe1a0 <__cxa_finalize@plt+0xfd190>\n ./src/model.c:164\n-\tbvc\tbdf6c <__cxa_finalize@plt+0xbcf5c>\n+\tbvc\tbe0a4 <__cxa_finalize@plt+0xbd094>\n ./src/model.c:165\n-\tbvc\t7e070 <__cxa_finalize@plt+0x7d060>\n+\tbvc\t7e1a8 <__cxa_finalize@plt+0x7d198>\n ./src/model.c:161 (discriminator 1)\n-\tldc\t1, cr13, [pc, #936]\t@ 2f10 <__cxa_finalize@plt+0x1f00>\n+\tldc\t1, cr13, [pc, #936]\t@ 3048 <__cxa_finalize@plt+0x2038>\n ./src/model.c:168\n \t\t\t@ instruction: 0xeef00a1b\n \tvmov.f32\ts0, s0\n \tvstr\ts2, [sp, #256]\t@ 0x100\n \tvstr\ts0, [sp, #12]\n \tvstr\ts0, [sp, #16]\n-\t\t\t@ instruction: 0xf0010a05\n-\tmrc\t9, 5, APSR_nzcv, cr5, cr15, {7}\n+\t\t\t@ instruction: 0xf7ff0a05\n+\tcdp\t13, 11, cr15, cr5, cr7, {7}\n ./src/model.c:170\n \tstmdavs\tr2!, {r6, r9, fp}\n-\tblx\t43e750 <__cxa_finalize@plt+0x43d740>\n+\tblx\t43e888 <__cxa_finalize@plt+0x43d878>\n ./src/model.c:170 (discriminator 1)\n \tmrc\t15, 7, fp, cr7, cr6, {0}\n \tvmov.f32\ts14, #112\t@ 0x3f800000 1.0\n ./src/model.c:170 (discriminator 2)\n \tvdiv.f32\ts12, s14, s0\n ./src/model.c:170 (discriminator 1)\n \tbiclt\tr6, r2, r0, lsl #21\n ./src/model.c:171 (discriminator 1)\n \tsmlatbcs\tip, r3, r8, r6\n \tandcc\tpc, r2, #1024\t@ 0x400\n ./src/model.c:173\n-\tbvs\t3e2f4 <__cxa_finalize@plt+0x3d2e4>\n+\tbvs\t3e42c <__cxa_finalize@plt+0x3d41c>\n ./src/model.c:171 (discriminator 1)\n \tldc\t3, cr3, [r3, #-48]\t@ 0xffffffd0\n ./src/model.c:174\n \tvldr\ts15, [r3, #-8]\n ./src/model.c:175\n \taddsmi\tr7, sl, #4096\t@ 0x1000\n ./src/model.c:173\n-\tbvs\tfe1be550 <__cxa_finalize@plt+0xfe1bd540>\n+\tbvs\tfe1be688 <__cxa_finalize@plt+0xfe1bd678>\n ./src/model.c:174\n-\tbvc\t1be458 <__cxa_finalize@plt+0x1bd448>\n+\tbvc\t1be590 <__cxa_finalize@plt+0x1bd580>\n ./src/model.c:175\n-\tbvc\tfe1be55c <__cxa_finalize@plt+0xfe1bd54c>\n+\tbvc\tfe1be694 <__cxa_finalize@plt+0xfe1bd684>\n ./src/model.c:173\n-\tbvs\tfe0d0 <__cxa_finalize@plt+0xfd0c0>\n+\tbvs\tfe208 <__cxa_finalize@plt+0xfd1f8>\n ./src/model.c:174\n-\tbvc\tbdfd4 <__cxa_finalize@plt+0xbcfc4>\n+\tbvc\tbe10c <__cxa_finalize@plt+0xbd0fc>\n ./src/model.c:175\n-\tbvc\t7e0d8 <__cxa_finalize@plt+0x7d0c8>\n+\tbvc\t7e210 <__cxa_finalize@plt+0x7d200>\n ./src/model.c:171 (discriminator 1)\n \tandlt\tsp, r6, sl, ror #3\n ./src/model.c:177\n \tsvclt\t0x0000bd10\n \tandeq\tr0, r0, r0\n model_change_orientation():\n ./src/model.c:180\n \tvst3.8\t{d27,d29,d31}, [pc :64], r0\n-\tbl\tfeb59de0 <__cxa_finalize@plt+0xfeb58dd0>\n+\tbl\tfeb59f18 <__cxa_finalize@plt+0xfeb58f08>\n \t\t\t@ instruction: 0xf8cc0c0c\n \tstmdbcs\tr2, {r3, r4, r5, r6, r7, r8, r9, sl, fp}\n ./src/model.c:181\n-\tbcs\tb8cbc <__cxa_finalize@plt+0xb7cac>\n+\tbcs\tb8df4 <__cxa_finalize@plt+0xb7de4>\n ./src/model.c:182\n-\tblcs\tb8d08 <__cxa_finalize@plt+0xb7cf8>\n+\tblcs\tb8e40 <__cxa_finalize@plt+0xb7e30>\n ./src/model.c:183\n \tstmdavs\tr4, {r1, r3, r4, r5, fp, ip, lr, pc}\n ./src/model.c:185 (discriminator 1)\n \tstmvs\tr0, {r2, r3, r5, r6, r8, r9, ip, sp, pc}\n \tstceq\t0, cr15, [ip], {79}\t@ 0x4f\n \tstreq\tpc, [r4], #-2828\t@ 0xfffff4f4\n ./src/model.c:190\n \t\t\t@ instruction: 0xf8d02901\n ./src/model.c:189\n \tsvclt\t0x0008c000\n ./src/model.c:191\n-\tbvc\t7e34c <__cxa_finalize@plt+0x7d33c>\n+\tbvc\t7e484 <__cxa_finalize@plt+0x7d474>\n ./src/model.c:190\n \tstmdbcs\tr2, {r0, r2, ip, lr, pc}\n ./src/model.c:189\n \tmcr\t15, 0, fp, cr7, cr4, {0}\n \tvldr\ts25, [r0, #576]\t@ 0x240\n ./src/model.c:193\n-\tbcs\t61424 <__cxa_finalize@plt+0x60414>\n+\tbcs\t6155c <__cxa_finalize@plt+0x6054c>\n ./src/model.c:197\n \t\t\t@ instruction: 0xf8d0bf08\n \tandle\tlr, r4, r4\n ./src/model.c:198\n \tsvclt\t0x00142a02\n ./src/model.c:189\n \t\t\t@ instruction: 0xf8d046e6\n ./src/model.c:199\n-\tblcs\t7ac50 <__cxa_finalize@plt+0x79c40>\n+\tblcs\t7ad88 <__cxa_finalize@plt+0x79d78>\n ./src/model.c:203\n \t\t\t@ instruction: 0xf8d0bf08\n \tandle\tip, r3, r4\n ./src/model.c:204\n \tsvclt\t0x00082b02\n ./src/model.c:205\n \tldrdgt\tpc, [r8], -r0\n@@ -2646,72 +2765,72 @@\n ./src/model.c:185 (discriminator 1)\n \tldclt\t1, cr13, [r0, #-856]\t@ 0xfffffca8\n ./src/model.c:181 (discriminator 1)\n \tadcscs\tr4, r5, #14336\t@ 0x3800\n \tstmdami\tpc, {r1, r2, r3, r8, fp, lr}\t@ \n \tldrbtmi\tr4, [r9], #-1147\t@ 0xfffffb85\n \tldrbtmi\tr3, [r8], #-780\t@ 0xfffffcf4\n-\tldm\tr8, {r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}^\n+\tldmda\tip!, {r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}\n ./src/model.c:183 (discriminator 1)\n \tadcscs\tr4, r7, #12, 22\t@ 0x3000\n \tstmdami\tsp, {r2, r3, r8, fp, lr}\n \tldrbtmi\tr4, [r9], #-1147\t@ 0xfffffb85\n \tldrbtmi\tr3, [r8], #-780\t@ 0xfffffcf4\n-\tstmia\tlr, {r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}^\n+\tldmda\tr2!, {r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}\n ./src/model.c:182 (discriminator 1)\n \tadcscs\tr4, r6, #10240\t@ 0x2800\n \tstmdami\tfp, {r1, r3, r8, fp, lr}\n \tldrbtmi\tr4, [r9], #-1147\t@ 0xfffffb85\n \tldrbtmi\tr3, [r8], #-780\t@ 0xfffffcf4\n-\tstmia\tr4, {r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}^\n-\tandeq\tr3, r0, r4, asr r0\n-\tandeq\tr2, r0, r6, asr #7\n-\tandeq\tr2, r0, r6, lsl #8\n-\tandeq\tr3, r0, r0, asr #32\n-\t\t\t@ instruction: 0x000023b2\n-\tandeq\tr2, r0, sl, lsr #8\n-\tandeq\tr3, r0, ip, lsr #32\n-\tmuleq\tr0, lr, r3\n-\tstrdeq\tr2, [r0], -sl\n+\tstmda\tr8!, {r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}\n+\tandeq\tr2, r0, ip, lsl #30\n+\tandeq\tr2, r0, sl, lsl #23\n+\tandeq\tr2, r0, lr, ror #23\n+\tstrdeq\tr2, [r0], -r8\n+\tandeq\tr2, r0, r6, ror fp\n+\tandeq\tr2, r0, r2, lsl ip\n+\tandeq\tr2, r0, r4, ror #29\n+\tandeq\tr2, r0, r2, ror #22\n+\tandeq\tr2, r0, r2, ror #23\n model_invert_x():\n ./src/model.c:213 (discriminator 1)\n \tcmnlt\tsl, r2, lsl #16\n \tsmlabbcs\tip, r3, r8, r6\n \tandcc\tpc, r2, #1024\t@ 0x400\n ./src/model.c:214\n-\tbvc\t3e410 <__cxa_finalize@plt+0x3d400>\n+\tbvc\t3e548 <__cxa_finalize@plt+0x3d538>\n \tmovwcc\tr4, #50713\t@ 0xc619\n ./src/model.c:213 (discriminator 1)\n \tmrc\t2, 7, r4, cr1, cr3, {4}\n ./src/model.c:214\n \tvstr\ts15, [r1, #412]\t@ 0x19c\n \tmvnsle\tr7, r0, lsl #20\n ./src/model.c:149 (discriminator 1)\n \tsmlalbtlt\tr6, sl, r2, r8\n-\tbl\tdd1e8 <__cxa_finalize@plt+0xdc1d8>\n+\tbl\tdd320 <__cxa_finalize@plt+0xdc310>\n \tldmib\tr3, {r1, ip}^\n ./src/model.c:152\n \tstmib\tr3, {r0, r8, sp}^\n \ttstcc\tr0, #268435456\t@ 0x10000000\n ./src/model.c:149 (discriminator 1)\n \tmvnsle\tr4, r3, lsl #5\n ./src/model.c:216\n \tsvclt\t0x00004770\n model_invert_y():\n ./src/model.c:220 (discriminator 1)\n \tcmnlt\tr2, r2, lsl #16\n \tsmlabbcs\tip, r3, r8, r6\n \tandcc\tpc, r2, #1024\t@ 0x400\n ./src/model.c:221\n-\tbvc\t7e44c <__cxa_finalize@plt+0x7d43c>\n+\tbvc\t7e584 <__cxa_finalize@plt+0x7d574>\n ./src/model.c:220 (discriminator 1)\n \taddsmi\tr3, r3, #12, 6\t@ 0x30000000\n ./src/model.c:221\n-\tbvc\t19fe8cc <__cxa_finalize@plt+0x19fd8bc>\n-\tbvc\tbe218 <__cxa_finalize@plt+0xbd208>\n+\tbvc\t19fea04 <__cxa_finalize@plt+0x19fd9f4>\n+\tbvc\tbe350 <__cxa_finalize@plt+0xbd340>\n ./src/model.c:220 (discriminator 1)\n \tstmiavs\tr2, {r1, r2, r4, r5, r6, r7, r8, ip, lr, pc}^\n ./src/model.c:149 (discriminator 1)\n \tstmdbvs\tr3, {r1, r3, r6, r8, ip, sp, pc}^\n \tandne\tlr, r2, r3, lsl #22\n ./src/model.c:152\n \tldrdcs\tlr, [r1, -r3]\n@@ -2721,49 +2840,49 @@\n \t\t\t@ instruction: 0x4770d1f8\n model_invert_z():\n ./src/model.c:227 (discriminator 1)\n \tcmnlt\tr2, r2, lsl #16\n \tsmlabbcs\tip, r3, r8, r6\n \tandcc\tpc, r2, #1024\t@ 0x400\n ./src/model.c:228\n-\tbvc\tbe484 <__cxa_finalize@plt+0xbd474>\n+\tbvc\tbe5bc <__cxa_finalize@plt+0xbd5ac>\n ./src/model.c:227 (discriminator 1)\n \taddsmi\tr3, r3, #12, 6\t@ 0x30000000\n ./src/model.c:228\n-\tbvc\t19fe904 <__cxa_finalize@plt+0x19fd8f4>\n-\tbvc\t7e250 <__cxa_finalize@plt+0x7d240>\n+\tbvc\t19fea3c <__cxa_finalize@plt+0x19fda2c>\n+\tbvc\t7e388 <__cxa_finalize@plt+0x7d378>\n ./src/model.c:227 (discriminator 1)\n \tstmiavs\tr2, {r1, r2, r4, r5, r6, r7, r8, ip, lr, pc}^\n ./src/model.c:149 (discriminator 1)\n \tstmdbvs\tr3, {r1, r3, r6, r8, ip, sp, pc}^\n \tandne\tlr, r2, r3, lsl #22\n ./src/model.c:152\n \tldrdcs\tlr, [r1, -r3]\n \tandne\tlr, r1, #3194880\t@ 0x30c000\n ./src/model.c:149 (discriminator 1)\n \taddmi\tr3, r3, #16, 6\t@ 0x40000000\n \t\t\t@ instruction: 0x4770d1f8\n model_free():\n ./src/model.c:233\n \tvst3.8\t{d27,d29,d31}, [pc :64], r0\n-\tbl\tfeb59f68 <__cxa_finalize@plt+0xfeb58f58>\n+\tbl\tfeb5a0a0 <__cxa_finalize@plt+0xfeb59090>\n \t\t\t@ instruction: 0xf8cc0c0c\n \t\t\t@ instruction: 0x46040ff8\n ./src/model.c:234\n-\t\t\t@ instruction: 0xf7fe6880\n-\tstmdbvs\tr0!, {r2, r3, r5, r6, fp, sp, lr, pc}^\n+\t\t\t@ instruction: 0xf7fd6880\n+\tstmdbvs\tr0!, {r4, r6, r7, r8, r9, sl, fp, sp, lr, pc}^\n ./src/model.c:235\n-\tstmda\tr8!, {r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}^\n+\tsvc\t0x00ccf7fd\n ./src/model.c:236\n-\t\t\t@ instruction: 0xf7fe6a20\n-\tstrtmi\tlr, [r0], -r6, ror #16\n+\t\t\t@ instruction: 0xf7fd6a20\n+\tstrtmi\tlr, [r0], -sl, asr #31\n ./src/model.c:238\n \t\t\t@ instruction: 0x4010e8bd\n ./src/model.c:237\n-\tldmdalt\tlr, {r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}^\n+\tsvclt\t0x00c2f7fd\n model_load_from_obj():\n ./src/model.c:400\n \tsvcmi\t0x00f0e92d\n \tstcpl\t4, cr15, [r0], {79}\t@ 0x4f\n \t\t\t@ instruction: 0x0c0cebad\n \tcdpeq\t8, 7, cr15, cr8, cr12, {6}\n \t\t\t@ instruction: 0xf8dfb0d9\n@@ -2776,25 +2895,25 @@\n \t\t\t@ instruction: 0xf8df4479\n ./src/model.c:400\n \tmovwls\tr2, #38548\t@ 0x9694\n \t\t\t@ instruction: 0x3690f8df\n \tandls\tr4, sp, sl, ror r4\n \tldmdavs\tfp, {r0, r1, r4, r6, r7, fp, ip, lr}\n \t\t\t@ instruction: 0xf04f9357\n-\t\t\t@ instruction: 0xf7fe0300\n+\t\t\t@ instruction: 0xf7fd0300\n ./src/model.c:401\n-\tstmdacs\tr0, {r2, r3, r5, r6, fp, sp, lr, pc}\n+\tstmdacs\tr0, {r4, r6, r7, r8, r9, sl, fp, sp, lr, pc}\n ./src/model.c:402\n \trscshi\tpc, sl, #0\n ./src/model.c:409\n \t\t\t@ instruction: 0xf7ff4682\n \tandls\tpc, r3, r9, lsr #26\n ./src/model.c:417\n \t\t\t@ instruction: 0xf7fe2080\n-\tstrmi\tlr, [r5], -sl, lsr #17\n+\tstrmi\tlr, [r5], -lr, lsl #16\n ./src/model.c:417 (discriminator 1)\n \t\t\t@ instruction: 0xf0002800\n \t\t\t@ instruction: 0xf8df830f\n ./src/model.c:513 (discriminator 1)\n \tstrcs\tr3, [r0], #1636\t@ 0x664\n ./src/model.c:280\n \t\t\t@ instruction: 0xb660f8df\n@@ -2807,67 +2926,67 @@\n \tldrbtmi\tr3, [r9], #1628\t@ 0x65c\n \tmovwls\tr4, #29819\t@ 0x747b\n ./src/model.c:411\n \tmvnscc\tpc, #79\t@ 0x4f\n \tldrbmi\tr9, [r2], -lr, lsl #6\n ./src/model.c:377\n \tstrtmi\tr4, [r8], -r1, lsr #12\n-\tsvc\t0x00ccf7fd\n+\tsvc\t0x0030f7fd\n ./src/model.c:377 (discriminator 1)\n \tmls\tlr, r0, r9, fp\n ./src/model.c:382\n \tstrtmi\tr0, [r8], -r6, rrx\n \t\t\t@ instruction: 0xf7fe4631\n-\t\t\t@ instruction: 0x4605e8d6\n+\t\t\t@ instruction: 0x4605e83a\n ./src/model.c:382 (discriminator 1)\n \t\t\t@ instruction: 0xf0002800\n \tcdpne\t2, 6, cr8, cr0, cr3, {5}\n ./src/model.c:388\n \tstrtmi\tr1, [r8], #-3169\t@ 0xfffff39f\n \t\t\t@ instruction: 0xf7fd4652\n-\tstmdacs\tr0, {r2, r3, r4, r5, r7, r8, r9, sl, fp, sp, lr, pc}\n+\tstmdacs\tr0, {r5, r8, r9, sl, fp, sp, lr, pc}\n ./src/model.c:388 (discriminator 1)\n \t\t\t@ instruction: 0x4634d05d\n ./src/model.c:380\n-\t\t\t@ instruction: 0xf7fe4628\n-\tstrtmi\tlr, [r8], #-2078\t@ 0xfffff7e2\n+\t\t\t@ instruction: 0xf7fd4628\n+\tstrtmi\tlr, [r8], #-3970\t@ 0xfffff07e\n ./src/model.c:380 (discriminator 1)\n \tstccc\t8, cr15, [r1], {16}\n \tmvnle\tr2, sl, lsl #22\n ./src/model.c:312\n \tstrtmi\tr7, [sl], -fp, lsr #16\n ./src/model.c:317\n \ttstcs\tr0, r0, lsr #32\n ./src/model.c:312\n-\tblcs\t36f404 <__cxa_finalize@plt+0x36e3f4>\n+\tblcs\t36f53c <__cxa_finalize@plt+0x36e52c>\n ./src/model.c:314\n-\tblcs\t2b2abc <__cxa_finalize@plt+0x2b1aac>\n+\tblcs\t2b2bf4 <__cxa_finalize@plt+0x2b1be4>\n ./src/model.c:315\n \tandsvc\tfp, r1, r8, lsl #30\n ./src/model.c:314\n \tldmdavc\tr3, {r0, r1, ip, lr, pc}\n ./src/model.c:316\n \tsvclt\t0x00082b09\n ./src/model.c:317\n \t\t\t@ instruction: 0xf8127010\n ./src/model.c:312\n-\tblcs\t12a74 <__cxa_finalize@plt+0x11a64>\n+\tblcs\t12bac <__cxa_finalize@plt+0x11b9c>\n \tmrcge\t1, 0, sp, cr0, cr1, {7}\n ./src/model.c:427\n \t\t\t@ instruction: 0x46596035\n ./src/model.c:280\n \t\t\t@ instruction: 0xf7ff4630\n \tstmdacs\tr0, {r0, r5, r7, sl, fp, ip, sp, lr, pc}\n ./src/model.c:280 (discriminator 1)\n \tstmdavc\tr3, {r0, r1, r6, r7, ip, lr, pc}\n ./src/model.c:282\n \trscsle\tr2, r6, r0, lsl #22\n ./src/model.c:430 (discriminator 2)\n-\tblcs\t8d46a8 <__cxa_finalize@plt+0x8d3698>\n-\tblcs\t1db7184 <__cxa_finalize@plt+0x1db6174>\n+\tblcs\t8d47e0 <__cxa_finalize@plt+0x8d37d0>\n+\tblcs\t1db72bc <__cxa_finalize@plt+0x1db62ac>\n ./src/model.c:433\n \tstmdavc\tr3, {r0, r1, r3, r6, r8, ip, lr, pc}^\n ./src/model.c:433 (discriminator 1)\n \tcmple\tr8, r0, lsl #22\n ./src/model.c:437\n \tstmdaeq\tr4, {r0, r2, r3, r8, ip, sp, lr, pc}^\n \t\t\t@ instruction: 0x46414630\n@@ -2888,142 +3007,142 @@\n ./src/model.c:446\n \tvldr\ts1, [sp]\n ./src/model.c:447\n \tvldr\ts0, [sp, #72]\t@ 0x48\n ./src/model.c:448\n \tstmdals\tr3, {r0, r1, r4, r9, fp, ip}\n ./src/model.c:446\n-\tbeq\t53e510 <__cxa_finalize@plt+0x53d500>\n+\tbeq\t53e648 <__cxa_finalize@plt+0x53d638>\n ./src/model.c:447\n-\tbeq\t57e614 <__cxa_finalize@plt+0x57d604>\n+\tbeq\t57e74c <__cxa_finalize@plt+0x57d73c>\n ./src/model.c:448\n-\tbne\t5be518 <__cxa_finalize@plt+0x5bd508>\n+\tbne\t5be650 <__cxa_finalize@plt+0x5bd640>\n ./src/model.c:450\n \tstc2l\t7, cr15, [r6], #1020\t@ 0x3fc\n ./src/model.c:377\n \t\t\t@ instruction: 0x46214652\n \t\t\t@ instruction: 0xf7fd4628\n-\tstmdacs\tr0, {r1, r2, r3, r4, r6, r8, r9, sl, fp, sp, lr, pc}\n+\tstmdacs\tr0, {r1, r6, r7, r9, sl, fp, sp, lr, pc}\n ./src/model.c:377 (discriminator 1)\n \tstrtmi\tsp, [r8], -r2, lsr #3\n ./src/model.c:554\n-\tsvc\t0x00a8f7fd\n+\tsvc\t0x000cf7fd\n ./src/model.c:555\n \t\t\t@ instruction: 0xf7fd4650\n-\tstmdals\tr3, {r4, r6, r8, r9, sl, fp, sp, lr, pc}\n+\tstmdals\tr3, {r2, r4, r5, r7, r9, sl, fp, sp, lr, pc}\n ./src/model.c:557\n \tldc2l\t7, cr15, [r4, #-1020]\t@ 0xfffffc04\n ./src/model.c:400\n \tldrbcs\tpc, [r0, #-2271]\t@ 0xfffff721\t@ \n ./src/model.c:559\n \tldrcc\tpc, [r8, #-2271]!\t@ 0xfffff721\n ./src/model.c:400\n \tldmpl\tr3, {r1, r3, r4, r5, r6, sl, lr}^\n ./src/model.c:559\n-\tblls\t15dcf80 <__cxa_finalize@plt+0x15dbf70>\n+\tblls\t15dd0b8 <__cxa_finalize@plt+0x15dc0a8>\n \t\t\t@ instruction: 0xf04f405a\n \t\t\t@ instruction: 0xf0400300\n \tstmdals\tr3, {r7, r9, pc}\n \tpop\t{r0, r3, r4, r6, ip, sp, pc}\n \tldmdavc\tfp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc}\n ./src/model.c:452\n \ttstle\tr4, r6, ror #22\n \tmulhi\tr1, r7, r8\n ./src/model.c:452 (discriminator 1)\n \tsvceq\t0x0000f1b8\n-\tblls\t277020 <__cxa_finalize@plt+0x276010>\n+\tblls\t277158 <__cxa_finalize@plt+0x276148>\n ./src/model.c:513\n \t\t\t@ instruction: 0xf43f2b00\n \tstmdbls\tsl, {r2, r5, r6, r8, r9, sl, fp, sp, pc}\n ./src/model.c:513 (discriminator 1)\n-\t\t\t@ instruction: 0xf7fe4638\n-\tstmdacs\tr0, {r2, r4, r6, fp, sp, lr, pc}\n+\t\t\t@ instruction: 0xf7fd4638\n+\tstmdacs\tr0, {r3, r4, r5, r7, r8, r9, sl, fp, sp, lr, pc}\n \tsbcshi\tpc, r6, r0\n ./src/model.c:546 (discriminator 1)\n \tstrne\tpc, [ip, #-2271]\t@ 0xfffff721\n \tldrbtmi\tr4, [r9], #-1592\t@ 0xfffff9c8\n-\tstmda\tsl, {r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}^\n+\tsvc\t0x00aef7fd\n \t\t\t@ instruction: 0xf47f2800\n \t\t\t@ instruction: 0xf8dfaf54\n ./src/model.c:280\n-\tldrbtmi\tr7, [pc], #-1280\t@ 2f68 <__cxa_finalize@plt+0x1f58>\n+\tldrbtmi\tr7, [pc], #-1280\t@ 30a0 <__cxa_finalize@plt+0x2090>\n \tstmdavc\tr3, {r0, sp, lr, pc}\n ./src/model.c:282\n \tldrtmi\tfp, [r9], -fp, lsr #18\n ./src/model.c:280\n \t\t\t@ instruction: 0xf7ff4630\n \tstmdacs\tr0, {r0, r2, r5, sl, fp, ip, sp, lr, pc}\n ./src/model.c:280 (discriminator 1)\n-\tblls\tf7758 <__cxa_finalize@plt+0xf6748>\n+\tblls\tf7890 <__cxa_finalize@plt+0xf6880>\n ./src/model.c:139 (discriminator 1)\n \tldmibvs\tpc, {r7, r9, sl, lr}\t@ \n \t\t\t@ instruction: 0xf43f2f00\n-\tbvs\t7aec84 <__cxa_finalize@plt+0x7adc74>\n+\tbvs\t7aedbc <__cxa_finalize@plt+0x7addac>\n ./src/model.c:139\n \tstrls\tr2, [r4], #-768\t@ 0xfffffd00\n \tand\tr4, r5, ip, lsl r6\n ./src/model.c:139 (discriminator 2)\n \t\t\t@ instruction: 0xf5063401\n ./src/model.c:139 (discriminator 1)\n \tadcmi\tr7, r7, #140509184\t@ 0x8600000\n \tbichi\tpc, r8, r0\n ./src/model.c:141\n \tldrtmi\tr4, [r0], -r1, asr #12\n-\tstmda\tr6!, {r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}\n+\tsvc\t0x008af7fd\n ./src/model.c:141 (discriminator 1)\n \tmvnsle\tr2, r0, lsl #16\n \tstcls\t4, cr9, [r4], {14}\n \tandcs\tlr, r4, sp, lsr #14\n ./src/model.c:280\n \tldrtvc\tpc, [r4], #2271\t@ 0x8df\t@ \n ./src/model.c:457\n-\tsvc\t0x00bcf7fd\n+\tsvc\t0x0020f7fd\n ./src/model.c:63\n \tldrtcc\tpc, [r0], #2271\t@ 0x8df\t@ \n ./src/model.c:280\n \tandls\tr4, r4, pc, ror r4\n ./src/model.c:63\n \tmovwls\tr4, #25723\t@ 0x647b\n ./src/model.c:456\n \tmovwls\tr2, #21249\t@ 0x5301\n ./src/model.c:460\n \tstmdavc\tr3, {r1, sp, lr, pc}\n ./src/model.c:282\n \tcmple\tip, r0, lsl #22\n ./src/model.c:280\n \t\t\t@ instruction: 0x46304639\n-\tblx\tffd40fd6 <__cxa_finalize@plt+0xffd3ffc6>\n+\tblx\tffd4110e <__cxa_finalize@plt+0xffd400fe>\n ./src/model.c:280 (discriminator 1)\n \tmvnsle\tr2, r0, lsl #16\n ./src/model.c:472\n \tsvceq\t0x0002f1b8\n \tbicshi\tpc, r3, r0, asr #6\n ./src/model.c:483\n-\tblx\t1ccc1a <__cxa_finalize@plt+0x1cbc0a>\n+\tblx\t1ccd52 <__cxa_finalize@plt+0x1cbd42>\n \tmovwls\tpc, #25352\t@ 0x6308\t@ \n \t\t\t@ instruction: 0xf7fd4618\n-\tandls\tlr, r5, r0, lsr #31\n+\tandls\tlr, r5, r4, lsl #30\n ./src/model.c:483 (discriminator 1)\n \t\t\t@ instruction: 0xf0002800\n-\tblls\te3780 <__cxa_finalize@plt+0xe2770>\n+\tblls\te38b8 <__cxa_finalize@plt+0xe28a8>\n ./src/model.c:489\n \t\t\t@ instruction: 0xf8d39a04\n \tldrmi\tlr, [r6], -r8\n-\tbl\ta9c1c <__cxa_finalize@plt+0xa8c0c>\n+\tbl\ta9d54 <__cxa_finalize@plt+0xa8d44>\n \t\t\t@ instruction: 0xf8560c88\n \tstrbmi\tr2, [r6, #-2820]!\t@ 0xfffff4fc\n \tand\tpc, r2, #7168\t@ 0x1c00\n \tstm\tr3, {r0, r1, r2, r9, fp, lr, pc}\n \t\t\t@ instruction: 0xf1030007\n ./src/model.c:488 (discriminator 1)\n \tmvnsle\tr0, ip, lsl #6\n ./src/model.c:492\n \t\t\t@ instruction: 0xf1a39b06\n \t\t\t@ instruction: 0x46380718\n-\tsvc\t0x0082f7fd\n+\tmcr\t7, 7, pc, cr6, cr13, {7}\t@ \n ./src/model.c:492 (discriminator 1)\n \tstmdacs\tr0, {r1, r2, ip, pc}\n \tbichi\tpc, r0, r0\n ./src/model.c:498\n \tstrbmi\tr9, [r1], -r6, lsl #28\n \tldrtmi\tr9, [r7], #-2053\t@ 0xfffff7fb\n \t\t\t@ instruction: 0xf0004632\n@@ -3032,487 +3151,487 @@\n \tstrls\tsl, [ip], #-44\t@ 0xffffffd4\n \t\t\t@ instruction: 0xf8dd46ba\n \tsvcls\t0x000e8010\n \tldmvs\tr3!, {r0, r1, sl, fp, ip, pc}\n ./src/model.c:506\n \tldmdavs\tr2!, {r5, r9, sl, lr}^\n ./src/model.c:502\n-\tblne\t3411b4 <__cxa_finalize@plt+0x3401a4>\n+\tblne\t3412ec <__cxa_finalize@plt+0x3402dc>\n ./src/model.c:506\n \teorcc\tpc, r3, r8, asr r8\t@ \n \teorcs\tpc, r2, r8, asr r8\t@ \n \teorne\tpc, r1, r8, asr r8\t@ \n \t\t\t@ instruction: 0xf7ff9700\n \tldrbmi\tpc, [r6, #-3171]\t@ 0xfffff39d\t@ \n ./src/model.c:500 (discriminator 1)\n \tstmdals\tr4, {r0, r1, r2, r3, r5, r6, r7, r8, ip, lr, pc}\n ./src/model.c:509\n \tstrge\tlr, [fp], #-2525\t@ 0xfffff623\n-\tmcr\t7, 7, pc, cr8, cr13, {7}\t@ \n+\tmcr\t7, 2, pc, cr12, cr13, {7}\t@ \n ./src/model.c:510\n \t\t\t@ instruction: 0xf7fd9805\n-\tstmdals\tr6, {r1, r2, r5, r6, r7, r9, sl, fp, sp, lr, pc}\n+\tstmdals\tr6, {r1, r3, r6, r9, sl, fp, sp, lr, pc}\n ./src/model.c:511\n-\tmcr\t7, 7, pc, cr2, cr13, {7}\t@ \n-\tblge\t53cb88 <__cxa_finalize@plt+0x53bb78>\n+\tmcr\t7, 2, pc, cr6, cr13, {7}\t@ \n+\tblge\t53ccc0 <__cxa_finalize@plt+0x53bcb0>\n ./src/model.c:303\n \tandsls\tr9, r4, r7, lsl #18\n \t\t\t@ instruction: 0xf7ff4618\n \tandcs\tpc, sl, #152576\t@ 0x25400\n /usr/include/stdlib.h:483\n \t\t\t@ instruction: 0xf7fd2100\n-\tblls\t17ecd8 <__cxa_finalize@plt+0x17dcc8>\n+\tblls\t17eba0 <__cxa_finalize@plt+0x17db90>\n \tldrmi\tr4, [r8, #1538]\t@ 0x602\n ./src/model.c:462\n-\tblls\tf7120 <__cxa_finalize@plt+0xf6110>\n+\tblls\tf7258 <__cxa_finalize@plt+0xf6248>\n ./src/model.c:468\n-\tblx\tfec9d110 <__cxa_finalize@plt+0xfec9c100>\n+\tblx\tfec9d248 <__cxa_finalize@plt+0xfec9c238>\n ./src/model.c:61 (discriminator 1)\n \tsubmi\tpc, r8, #134217730\t@ 0x8000002\n \taddsmi\tr0, r0, #1490944\t@ 0x16c000\n \t\t\t@ instruction: 0xf043bfc8\n \tldmdblt\tr3, {r0, r8, r9}^\n ./src/model.c:67\n \tsvclt\t0x00b42a00\n ./src/model.c:68\n \t\t\t@ instruction: 0xf1021852\n ./src/model.c:70\n-\tblls\t10fcc4 <__cxa_finalize@plt+0x10ecb4>\n+\tblls\t10fdfc <__cxa_finalize@plt+0x10edec>\n ./src/model.c:469\n \teorcs\tpc, r8, r3, asr #16\n \tstmdaeq\tr1, {r3, r8, ip, sp, lr, pc}\n ./src/model.c:280\n-\tblmi\tff9fcecc <__cxa_finalize@plt+0xff9fbebc>\n+\tblmi\tff9fd004 <__cxa_finalize@plt+0xff9fbff4>\n ./src/model.c:63\n \tstmiapl\tfp, {r3, r8, fp, ip, pc}^\n \tldmdavs\tr8, {r1, r2, r8, fp, ip, pc}\n-\tsvc\t0x0022f7fd\n+\tmcr\t7, 4, pc, cr6, cr13, {7}\t@ \n ./src/model.c:64\n \tldrb\tr2, [r0, r0, lsl #4]!\n ./src/model.c:465\n-\tb\t13e90f8 <__cxa_finalize@plt+0x13e80e8>\n-\tb\t13c380c <__cxa_finalize@plt+0x13c27fc>\n+\tb\t13e9230 <__cxa_finalize@plt+0x13e8220>\n+\tb\t13c3944 <__cxa_finalize@plt+0x13c2934>\n ./src/model.c:464\n \tandls\tr0, fp, #72, 6\t@ 0x20000001\n \t\t\t@ instruction: 0xf7fd9305\n ./src/model.c:465\n-\tbls\t2feea8 <__cxa_finalize@plt+0x2fde98>\n+\tbls\t2fed70 <__cxa_finalize@plt+0x2fdd60>\n \tldrb\tr9, [r4, r4]\n ./src/model.c:517\n \t\t\t@ instruction: 0xf7fd980d\n-\t\t\t@ instruction: 0x4607eebe\n+\tstrmi\tlr, [r7], -r2, lsr #28\n ./src/model.c:517 (discriminator 1)\n \t\t\t@ instruction: 0xf7fd3002\n-\tandls\tlr, fp, r4, lsl pc\n+\tandls\tlr, fp, r8, ror lr\n ./src/model.c:517 (discriminator 2)\n \t\t\t@ instruction: 0xf0002800\n \tldclne\t1, cr8, [sl], #-308\t@ 0xfffffecc\n ./src/model.c:522\n \t\t\t@ instruction: 0xf7fd990d\n-\tstmdals\tfp, {r1, r2, r3, r4, r5, r7, r9, sl, fp, sp, lr, pc}\n+\tstmdals\tfp, {r1, r5, r9, sl, fp, sp, lr, pc}\n ./src/model.c:525\n-\tmrc\t7, 2, APSR_nzcv, cr8, cr13, {7}\n+\tldc\t7, cr15, [ip, #1012]!\t@ 0x3f4\n \t\t\t@ instruction: 0xf7fd9005\n ./src/model.c:526\n-\t\t\t@ instruction: 0xf8d6eeac\n+\t\t\t@ instruction: 0xf8d6ee10\n ./src/model.c:526 (discriminator 1)\n \tstrmi\tr8, [r7], -r0\n \t\t\t@ instruction: 0xf7fd4640\n-\tldrtmi\tlr, [r8], #-3750\t@ 0xfffff15a\n+\tldrtmi\tlr, [r8], #-3594\t@ 0xfffff1f6\n ./src/model.c:529\n \t\t\t@ instruction: 0xf7fd3002\n-\tblmi\tff37ed2c <__cxa_finalize@plt+0xff37dd1c>\n+\tblmi\tff37ebf4 <__cxa_finalize@plt+0xff37dbe4>\n ./src/model.c:532\n \tstrmi\tr9, [r6], -r8, lsl #20\n ./src/model.c:529 (discriminator 1)\n \tldmpl\tr3, {r0, r2, r8, fp, ip, pc}^\n ./src/model.c:532\n \tldmdavs\tfp, {r2, r3, r8, r9, ip, pc}\n \tstmdacs\tr0, {r2, r8, r9, ip, pc}\n ./src/model.c:529 (discriminator 1)\n \tmrshi\tpc, (UNDEF: 76)\t@ \n ./src/model.c:535\n \t\t\t@ instruction: 0xf7fd463a\n-\tldclne\t14, cr14, [r8], #-640\t@ 0xfffffd80\n+\tldclne\t14, cr14, [r8], #-16\n ./src/model.c:536 (discriminator 1)\n \tstrbmi\tr2, [r1], -pc, lsr #6\n \tldrtmi\tr5, [r0], #-1523\t@ 0xfffffa0d\n ./src/model.c:537\n-\tmrc\t7, 5, APSR_nzcv, cr0, cr13, {7}\n+\tmrc\t7, 0, APSR_nzcv, cr4, cr13, {7}\n ./src/model.c:539\n \tldrtmi\tr4, [r2], -r3, asr #19\n \tldrbtmi\tr9, [r9], #-2052\t@ 0xfffff7fc\n-\tmrc\t7, 6, APSR_nzcv, cr10, cr13, {7}\n+\tmrc\t7, 1, APSR_nzcv, cr14, cr13, {7}\n ./src/model.c:324\n \tldrtmi\tr4, [r0], -r1, asr #19\n \t\t\t@ instruction: 0xf7fd4479\n-\tmulls\tr4, r4, lr\n+\tstrdls\tlr, [r4], -r8\n ./src/model.c:325\n \t\t\t@ instruction: 0xf0002800\n \t\t\t@ instruction: 0xf10d812b\n \t\t\t@ instruction: 0xf8cd085c\n-\tbls\t12b27c <__cxa_finalize@plt+0x12a26c>\n+\tbls\t12b3b4 <__cxa_finalize@plt+0x12a3a4>\n ./src/model.c:334\n \torrvc\tpc, r0, pc, asr #8\n \t\t\t@ instruction: 0xf7fd4640\n-\tstmdacs\tr0, {r2, r3, r9, sl, fp, sp, lr, pc}\n+\tstmdacs\tr0, {r4, r5, r6, r8, sl, fp, sp, lr, pc}\n ./src/model.c:334 (discriminator 1)\n \t\t\t@ instruction: 0xf898d06e\n ./src/model.c:312\n \tstrbmi\tr3, [r2], -r0\n ./src/model.c:315\n \tcmnlt\tr3, r0, lsl #2\n ./src/model.c:314\n \tsvclt\t0x00182b0d\n \tsvclt\t0x00082b0a\n ./src/model.c:315\n \tandle\tr7, r4, r1, lsl r0\n ./src/model.c:316\n-\tblcs\t261200 <__cxa_finalize@plt+0x2601f0>\n+\tblcs\t261338 <__cxa_finalize@plt+0x260328>\n ./src/model.c:317\n \t\t\t@ instruction: 0x2320bf04\n \t\t\t@ instruction: 0xf8127013\n ./src/model.c:312\n-\tblcs\t12dc4 <__cxa_finalize@plt+0x11db4>\n+\tblcs\t12efc <__cxa_finalize@plt+0x11eec>\n \tsvcge\t0x0011d1f0\n ./src/model.c:338\n \tandhi\tpc, r0, r7, asr #17\n ./src/model.c:280\n \tldrtmi\tr4, [r8], -r9, asr #12\n-\tblx\tffe411cc <__cxa_finalize@plt+0xffe401bc>\n+\tblx\tffe41304 <__cxa_finalize@plt+0xffe402f4>\n ./src/model.c:280 (discriminator 1)\n \tstmdacs\tr0, {r1, r9, sl, lr}\n \tldmdavc\tr3, {r0, r3, r4, r6, r7, ip, lr, pc}\n ./src/model.c:282\n \trscsle\tr2, r5, r0, lsl #22\n ./src/model.c:341 (discriminator 2)\n \tsbcsle\tr2, r4, r3, lsr #22\n ./src/model.c:344\n \tstmib\tsp, {r1, r2, r5, r7, r8, fp, lr}^\n \tldrbtmi\tr2, [r9], #-773\t@ 0xfffffcfb\n-\tsvc\t0x0002f7fd\n+\tmcr\t7, 3, pc, cr6, cr13, {7}\t@ \n ./src/model.c:344 (discriminator 1)\n \tmovwcs\tlr, #23005\t@ 0x59dd\n \tsubsle\tr2, r4, r0, lsl #16\n ./src/model.c:350\n \tbicle\tr2, r8, fp, asr #22\n-\tblcs\t1921348 <__cxa_finalize@plt+0x1920338>\n+\tblcs\t1921480 <__cxa_finalize@plt+0x1920470>\n \tldmvc\tr3, {r0, r2, r6, r7, r8, ip, lr, pc}\n ./src/model.c:350 (discriminator 1)\n \tbicle\tr2, r2, r0, lsl #22\n ./src/model.c:352\n \tldmibvs\tfp, {r0, r1, r8, r9, fp, ip, pc}\n \trsbsle\tr2, r8, r0, lsl #22\n ./src/model.c:359\n-\tbeq\t123f644 <__cxa_finalize@plt+0x123e634>\n+\tbeq\t123f77c <__cxa_finalize@plt+0x123e76c>\n \t\t\t@ instruction: 0x46514638\n \t\t\t@ instruction: 0xf7ff9205\n-\tbls\t182230 <__cxa_finalize@plt+0x181220>\n+\tbls\t182368 <__cxa_finalize@plt+0x181358>\n ./src/model.c:359 (discriminator 1)\n \teorsle\tr2, r7, r0, lsl #16\n ./src/model.c:359 (discriminator 2)\n \t\t\t@ instruction: 0x4638ab13\n \tandls\tr4, r6, #26214400\t@ 0x1900000\n \t\t\t@ instruction: 0xf7ff9305\n-\tbls\t1c221c <__cxa_finalize@plt+0x1c120c>\n+\tbls\t1c2354 <__cxa_finalize@plt+0x1c1344>\n ./src/model.c:359 (discriminator 1)\n \t\t\t@ instruction: 0x4638b370\n ./src/model.c:359 (discriminator 4)\n \tshadd16mi\tsl, r9, r4\n-\tblx\tffd4123a <__cxa_finalize@plt+0xffd4022a>\n+\tblx\tffd41372 <__cxa_finalize@plt+0xffd40362>\n ./src/model.c:359 (discriminator 1)\n \tteqlt\tr8, #24576\t@ 0x6000\n ./src/model.c:366\n \t\t\t@ instruction: 0xf44f9b05\n ./src/model.c:365\n \tsvcls\t0x00037286\n ./src/model.c:367\n \tldmdavs\tr8, {r2, r4, r8, fp, ip, pc}\n ./src/model.c:365\n \t\t\t@ instruction: 0xf8da69bb\n-\tblx\tb3256 <__cxa_finalize@plt+0xb2246>\n+\tblx\tb338e <__cxa_finalize@plt+0xb237e>\n \tldrmi\tpc, [sl], -r3, lsl #6\n \tldrmi\tr6, [r3], #-2619\t@ 0xfffff5c5\n ./src/model.c:334\n \t\t\t@ instruction: 0xf8439a04\n ./src/model.c:366\n \tstrbmi\tr0, [r0], -r8, lsl #24\n ./src/model.c:367\n \tstcne\t8, cr15, [r4], {67}\t@ 0x43\n ./src/model.c:334\n \torrvc\tpc, r0, pc, asr #8\n ./src/model.c:365\n \tstcgt\t8, cr15, [ip], {67}\t@ 0x43\n ./src/model.c:334\n-\tldc\t7, cr15, [ip, #1012]\t@ 0x3f4\n+\tstc\t7, cr15, [r0, #-1012]\t@ 0xfffffc0c\n ./src/model.c:334 (discriminator 1)\n \torrsle\tr2, r0, r0, lsl #16\n ./src/model.c:371\n \t\t\t@ instruction: 0xf8dd9804\n \t\t\t@ instruction: 0xf7fda03c\n-\tstmdals\tfp, {r4, r7, r8, sl, fp, sp, lr, pc}\n+\tstmdals\tfp, {r2, r4, r5, r6, r7, sl, fp, sp, lr, pc}\n ./src/model.c:543\n-\tstcl\t7, cr15, [r2, #1012]!\t@ 0x3f4\n+\tstcl\t7, cr15, [r6, #-1012]\t@ 0xfffffc0c\n ./src/model.c:544\n \t\t\t@ instruction: 0xf7fd4630\n-\tldr\tlr, [ip, #3552]!\t@ 0xde0\n+\tldr\tlr, [ip, #3396]!\t@ 0xd44\n ./src/model.c:361\n \tldmdbmi\tfp!, {r2, r3, r8, r9, fp, ip, pc}^\n \tldrbtmi\tr6, [r9], #-2072\t@ 0xfffff7e8\n-\tmcr\t7, 2, pc, cr4, cr13, {7}\t@ \n+\tstc\t7, cr15, [r8, #1012]!\t@ 0x3f4\n ./src/model.c:362\n \t\t\t@ instruction: 0xf8dfe775\n ./src/model.c:280\n \tldrbtmi\tsl, [sl], #484\t@ 0x1e4\n \tstmdavc\tr3, {r0, sp, lr, pc}\n ./src/model.c:282\n \tldrbmi\tfp, [r1], -fp, lsr #18\n ./src/model.c:280\n \t\t\t@ instruction: 0xf7ff4638\n \tstmdacs\tr0, {r0, r1, r2, r7, r9, fp, ip, sp, lr, pc}\n ./src/model.c:280 (discriminator 1)\n \tstrdls\tsp, [r5], -r7\n ./src/model.c:113\n-\tstcl\t7, cr15, [r0, #1012]!\t@ 0x3f4\n+\tstcl\t7, cr15, [r4, #-1012]\t@ 0xfffffc0c\n ./src/model.c:113 (discriminator 1)\n \tldmcs\tpc!, {r0, r2, r8, r9, fp, ip, pc}^\t@ \n \tadchi\tpc, r4, r0, lsl #4\n ./src/model.c:119\n \tldmib\tr0, {r0, r1, fp, ip, pc}^\n-\tbvs\tb6e4 <__cxa_finalize@plt+0xa6d4>\n+\tbvs\tb81c <__cxa_finalize@plt+0xa80c>\n \tandsle\tr4, sp, sl, lsl #5\n ./src/model.c:129\n \tstrvc\tpc, [r6, pc, asr #8]\n-\tblx\t1d4b3e <__cxa_finalize@plt+0x1d3b2e>\n+\tblx\t1d4c76 <__cxa_finalize@plt+0x1d3c66>\n \t\t\t@ instruction: 0xf7fd0002\n-\tstmdals\tr3, {r2, r4, r5, r6, r7, r8, sl, fp, sp, lr, pc}\n+\tstmdals\tr3, {r3, r4, r6, r8, sl, fp, sp, lr, pc}\n ./src/model.c:130\n \tcmnppl\tlr, pc, asr #32\t@ p-variant is OBSOLETE\n-\tbvs\tdd8f0 <__cxa_finalize@plt+0xdc8e0>\n+\tbvs\tdda28 <__cxa_finalize@plt+0xdca18>\n \tmovwcc\tpc, #11015\t@ 0x2b07\t@ \n ./src/model.c:134\n \t\t\t@ instruction: 0xf8c33201\n ./src/model.c:130\n \t\t\t@ instruction: 0xf8c31100\n ./src/model.c:131\n \t\t\t@ instruction: 0xf8c31104\n ./src/model.c:132\n \torrvs\tr1, r2, r8, lsl #2\n ./src/model.c:135\n-\tblls\t33d014 <__cxa_finalize@plt+0x33c004>\n+\tblls\t33d14c <__cxa_finalize@plt+0x33c13c>\n ./src/model.c:354\n \tldmdavs\tr8, {r0, r5, r6, r8, fp, lr}\n \t\t\t@ instruction: 0xf7fd4479\n-\tldr\tlr, [lr, -lr, lsl #28]!\n+\t\t\t@ instruction: 0xe73eed72\n ./src/model.c:121\n \t\t\t@ instruction: 0xf44f9f03\n ./src/model.c:122\n \tmovwls\tr7, #20742\t@ 0x5106\n \t\t\t@ instruction: 0xf101fb02\n ./src/model.c:121\n \tmvnsvs\tr0, r2, asr r0\n ./src/model.c:122\n-\tmrc\t7, 2, APSR_nzcv, cr6, cr13, {7}\n+\tldc\t7, cr15, [sl, #1012]!\t@ 0x3f4\n ./src/model.c:122 (discriminator 1)\n \tstmdacs\tr0, {r3, r4, r5, r9, sp, lr}\n \tldmibvs\tsl!, {r0, r1, r2, r3, r4, r5, r6, ip, lr, pc}\n ./src/model.c:129\n \tldrb\tr9, [r1, r5, lsl #22]\n ./src/model.c:144\n \tmvnscc\tpc, #79\t@ 0x4f\n \tmovwls\tr9, #60420\t@ 0xec04\n-\tblmi\t13bc8dc <__cxa_finalize@plt+0x13bb8cc>\n+\tblmi\t13bca14 <__cxa_finalize@plt+0x13bba04>\n ./src/model.c:439\n \tstmdbls\tr8, {r5, r9, sp}\n \tstmiapl\tfp, {r0, r1, r4, r6, fp, lr}^\n \ttstcs\tr1, r8, ror r4\n \t\t\t@ instruction: 0xf7fd681b\n-\tldrbmi\tlr, [r0], -r2, ror #27\n+\tldrbmi\tlr, [r0], -r6, asr #26\n ./src/model.c:440\n-\tstc\t7, cr15, [r8, #-1012]!\t@ 0xfffffc0c\n+\tstc\t7, cr15, [ip], {253}\t@ 0xfd\n ./src/model.c:234\n \tstmiavs\tr0!, {r0, r1, sl, fp, ip, pc}\n-\tldcl\t7, cr15, [sl, #-1012]!\t@ 0xfffffc0c\n+\tldcl\t7, cr15, [lr], {253}\t@ 0xfd\n ./src/model.c:235\n \t\t\t@ instruction: 0xf7fd6960\n-\tbvs\t83e940 <__cxa_finalize@plt+0x83d930>\n+\tbvs\t83e808 <__cxa_finalize@plt+0x83d7f8>\n ./src/model.c:236\n-\tldcl\t7, cr15, [r4, #-1012]!\t@ 0xfffffc0c\n+\tldcl\t7, cr15, [r8], {253}\t@ 0xfd\n ./src/model.c:237\n \t\t\t@ instruction: 0xf7fd4620\n-\tmovwcs\tlr, #3442\t@ 0xd72\n+\tmovwcs\tlr, #3286\t@ 0xcd6\n ./src/model.c:405\n \tstrb\tr9, [fp, #771]\t@ 0x303\n ./src/model.c:384\n-\tblmi\tfd5490 <__cxa_finalize@plt+0xfd4480>\n+\tblmi\tfd55c8 <__cxa_finalize@plt+0xfd45b8>\n \tstcls\t4, cr4, [r8], {120}\t@ 0x78\n ./src/model.c:485\n \ttstcs\tr1, r2, lsr #4\n \tldmdavs\tfp, {r0, r1, r5, r6, r7, fp, ip, lr}\n-\tstcl\t7, cr15, [r4, #1012]\t@ 0x3f4\n+\tstc\t7, cr15, [r8, #-1012]!\t@ 0xfffffc0c\n ./src/model.c:486\n \t\t\t@ instruction: 0xf7fd2001\n-\tblmi\te7ec74 <__cxa_finalize@plt+0xe7dc64>\n+\tblmi\te7eb3c <__cxa_finalize@plt+0xe7db2c>\n ./src/model.c:474\n-\tbls\t20b794 <__cxa_finalize@plt+0x20a784>\n+\tbls\t20b8cc <__cxa_finalize@plt+0x20a8bc>\n \tldmpl\tr3, {r6, fp, lr}^\n \teorcs\tr4, r0, #120, 8\t@ 0x78000000\n \t\t\t@ instruction: 0xf7fd681b\n-\t\t\t@ instruction: 0x4650edb8\n+\t\t\t@ instruction: 0x4650ed1c\n ./src/model.c:475\n-\tldcl\t7, cr15, [lr], #1012\t@ 0x3f4\n+\tstcl\t7, cr15, [r2], #-1012\t@ 0xfffffc0c\n ./src/model.c:476\n \t\t\t@ instruction: 0xf7fd9804\n-\t\t\t@ instruction: 0xe7d1ed52\n+\t\t\t@ instruction: 0xe7d1ecb6\n ./src/model.c:519\n-\tblmi\tc15498 <__cxa_finalize@plt+0xc14488>\n+\tblmi\tc155d0 <__cxa_finalize@plt+0xc145c0>\n \t\t\t@ instruction: 0xe7e04478\n ./src/model.c:494\n-\tblmi\tb9549c <__cxa_finalize@plt+0xb9448c>\n+\tblmi\tb955d4 <__cxa_finalize@plt+0xb945c4>\n \t\t\t@ instruction: 0xe7dc4478\n ./src/model.c:485\n-\tblmi\tb154a0 <__cxa_finalize@plt+0xb14490>\n+\tblmi\tb155d8 <__cxa_finalize@plt+0xb145c8>\n \t\t\t@ instruction: 0xe7d84478\n ./src/model.c:404\n \tstmdals\tr8, {r1, r3, r5, r8, r9, fp, lr}\n-\tbls\t3558a4 <__cxa_finalize@plt+0x354894>\n+\tbls\t3559dc <__cxa_finalize@plt+0x3549cc>\n \tldrbtmi\tr5, [r9], #-2243\t@ 0xfffff73d\n \t\t\t@ instruction: 0xf7fd6818\n-\tstrb\tlr, [r8, r8, lsr #27]\n+\tstrb\tlr, [r8, ip, lsl #26]\n ./src/model.c:327\n \tldrtmi\tr9, [r2], -ip, lsl #22\n \tldmdavs\tr8, {r1, r4, r5, r8, fp, lr}\n \t\t\t@ instruction: 0xf7fd4479\n-\tstrb\tlr, [ip, -r0, lsr #27]\n+\tstrb\tlr, [ip, -r4, lsl #26]\n ./src/model.c:531\n \tldrmi\tr9, [r8], fp, lsl #16\n-\tstc\t7, cr15, [lr, #-1012]!\t@ 0xfffffc0c\n+\tldc\t7, cr15, [r2], {253}\t@ 0xfd\n ./src/model.c:532\n \tstrbmi\tr4, [r3], -lr, lsr #16\n \tldrbtmi\tr2, [r8], #-564\t@ 0xfffffdcc\n \t\t\t@ instruction: 0xf7fd2101\n-\tandcs\tlr, r1, r8, lsl #27\n+\tandcs\tlr, r1, ip, ror #25\n ./src/model.c:533\n-\tldcl\t7, cr15, [ip, #1012]!\t@ 0x3f4\n+\tstcl\t7, cr15, [r0, #-1012]!\t@ 0xfffffc0c\n ./src/model.c:419\n-\tblmi\t6954b0 <__cxa_finalize@plt+0x6944a0>\n+\tblmi\t6955e8 <__cxa_finalize@plt+0x6945d8>\n \t\t\t@ instruction: 0xe7b44478\n ./src/model.c:115\n \tandscs\tr9, pc, #12, 22\t@ 0x3000\n \ttstcs\tr1, r8, lsr #16\n \tldrbtmi\tr6, [r8], #-2075\t@ 0xfffff7e5\n-\tldcl\t7, cr15, [r8, #-1012]!\t@ 0xfffffc0c\n+\tldcl\t7, cr15, [ip], {253}\t@ 0xfd\n ./src/model.c:116\n \t\t\t@ instruction: 0xf7fd2001\n-\t\t\t@ instruction: 0xf7fdedee\n+\t\t\t@ instruction: 0xf7fded52\n ./src/model.c:559\n-\tblls\t33ea70 <__cxa_finalize@plt+0x33da60>\n+\tblls\t33e938 <__cxa_finalize@plt+0x33d928>\n ./src/model.c:124\n \tstmdami\tr3!, {r1, r5, r9, sp}\n \tldmdavs\tfp, {r0, r8, sp}\n \t\t\t@ instruction: 0xf7fd4478\n-\tandcs\tlr, r1, ip, ror #26\n+\tldrdcs\tlr, [r1], -r0\n ./src/model.c:125\n-\tstcl\t7, cr15, [r0, #1012]!\t@ 0x3f4\n-\tandeq\tsp, r1, ip, lsr #2\n-\tandeq\tr2, r0, r0, lsl r3\n-\tandeq\tsp, r1, ip, lsl r1\n+\tstcl\t7, cr15, [r4, #-1012]\t@ 0xfffffc0c\n+\tstrdeq\tip, [r1], -r4\n+\tstrdeq\tr2, [r0], -r8\n+\tandeq\tip, r1, r4, ror #31\n \tandeq\tr0, r0, r4, lsl r1\n-\tandeq\tr2, r0, r8, lsr r3\n-\tandeq\tr2, r0, r8, ror #4\n-\tandeq\tr2, r0, r2, ror #4\n-\tandeq\tr2, r0, r4, ror #4\n-\tandeq\tip, r1, r4, asr #31\n-\tandeq\tr2, r0, lr, asr #5\n-\tstrdeq\tr2, [r0], -sl\n-\tandeq\tr2, r0, r4, lsr #1\n-\tandeq\tr2, r0, r0, lsl #1\n+\tandeq\tr2, r0, r0, lsr #22\n+\tandeq\tr2, r0, r0, asr sl\n+\tandeq\tr2, r0, sl, asr #20\n+\tandeq\tr2, r0, ip, asr #20\n+\tandeq\tip, r1, ip, lsl #29\n+\t\t\t@ instruction: 0x00002ab6\n+\tandeq\tr2, r0, r2, ror #17\n+\tandeq\tr2, r0, ip, lsl #17\n+\tandeq\tr2, r0, r8, ror #16\n \tandeq\tr0, r0, ip, lsl r1\n-\tandeq\tr2, r0, r2\n-\tandeq\tr1, r0, r8, asr #30\n-\tandeq\tr1, r0, r2, asr #31\n-\tandeq\tr1, r0, sl, ror #30\n-\t\t\t@ instruction: 0x00001dbe\n-\tandeq\tr1, r0, ip, asr #29\n-\tandeq\tr1, r0, r4, lsr #27\n-\tandeq\tr1, r0, r8, ror #24\n-\tandeq\tr1, r0, r4, ror sp\n-\tandeq\tr1, r0, ip, lsr #24\n-\tandeq\tr1, r0, r4, lsr #24\n-\tandeq\tr1, r0, ip, lsl ip\n-\tstrdeq\tr1, [r0], -r2\n-\tandeq\tr1, r0, r4, lsr #27\n-\tandeq\tr1, r0, lr, lsr sp\n-\tldrdeq\tr1, [r0], -r4\n-\tmuleq\tr0, sl, sp\n-\tandeq\tr1, r0, ip, lsr #23\n+\tandeq\tr2, r0, sl, ror #15\n+\tandeq\tr2, r0, r0, lsr r7\n+\tandeq\tr2, r0, sl, lsr #15\n+\tandeq\tr2, r0, r2, asr r7\n+\tandeq\tr2, r0, r6, lsr #11\n+\t\t\t@ instruction: 0x000026b4\n+\tandeq\tr2, r0, ip, lsl #11\n+\tmuleq\tr0, r0, r4\n+\tandeq\tr2, r0, ip, asr r5\n+\tandeq\tr2, r0, r4, asr r4\n+\tandeq\tr2, r0, ip, asr #8\n+\tandeq\tr2, r0, r4, asr #8\n+\tldrdeq\tr2, [r0], -sl\n+\tandeq\tr2, r0, ip, lsl #11\n+\tandeq\tr2, r0, r6, lsr #10\n+\tstrdeq\tr2, [r0], -ip\n+\tandeq\tr2, r0, r2, lsl #11\n+\tldrdeq\tr2, [r0], -r4\n model_load_from_stl():\n ./src/model.c:562\n \tsvcmi\t0x00f0e92d\n \tstcpl\t4, cr15, [r0], {79}\t@ 0x4f\n \t\t\t@ instruction: 0x0c0cebad\n \tcdpeq\t8, 3, cr15, cr8, cr12, {6}\n-\tblmi\tfebaf874 <__cxa_finalize@plt+0xfebae864>\n+\tblmi\tfebaf9ac <__cxa_finalize@plt+0xfebae99c>\n \tstrmi\tr4, [r4], -lr, lsr #21\n \tstmibmi\tlr!, {r0, r1, r3, r4, r5, r6, sl, lr}\n \tldrbtmi\tr9, [sl], #-771\t@ 0xfffffcfd\n \tldrbtmi\tr4, [r9], #-2989\t@ 0xfffff453\n \tldmdavs\tfp, {r0, r1, r4, r6, r7, fp, ip, lr}\n \t\t\t@ instruction: 0xf04f9367\n \t\t\t@ instruction: 0xf7fd0300\n ./src/model.c:563\n-\tstmdacs\tr0, {r1, r3, r4, r6, r7, sl, fp, sp, lr, pc}\n+\tstmdacs\tr0, {r1, r2, r3, r4, r5, sl, fp, sp, lr, pc}\n ./src/model.c:564\n \tteqphi\tlr, r0\t@ p-variant is OBSOLETE\n ./src/model.c:586\n \tstrmi\tsl, [r2], r5, lsl #26\n ./src/model.c:584\n \tstcmi\t15, cr10, [r7], #156\t@ 0x9c\n ./src/model.c:571\n \t\t\t@ instruction: 0xf994f7ff\n ./src/model.c:584\n \t\t\t@ instruction: 0x46064652\n \torrvc\tpc, r0, pc, asr #8\n \tldrbtmi\tr4, [ip], #-1592\t@ 0xfffff9c8\n-\tmcrr\t7, 15, pc, lr, cr13\t@ \n+\tbl\tfecc163c <__cxa_finalize@plt+0xfecc062c>\n ./src/model.c:586\n \tand\tr6, r1, pc, lsr #32\n ./src/model.c:282\n \tstmdblt\tfp!, {r0, r1, fp, ip, sp, lr}\n ./src/model.c:280\n \tstrtmi\tr4, [r8], -r1, lsr #12\n \t\t\t@ instruction: 0xf950f7ff\n ./src/model.c:280 (discriminator 1)\n \tmvnsle\tr2, r0, lsl #16\n ./src/model.c:589\n \tldrbtmi\tr4, [r9], #-2461\t@ 0xfffff663\n-\tstcl\t7, cr15, [r2, #-1012]!\t@ 0xfffffc0c\n+\tstcl\t7, cr15, [r6], {253}\t@ 0xfd\n ./src/model.c:589 (discriminator 1)\n \tsuble\tr2, r8, r0, lsl #16\n ./src/model.c:638\n \tcmpcs\tr0, r0, lsl #4\n \tldcge\t6, cr4, [r9], {80}\t@ 0x50\n-\tstc\t7, cr15, [lr], {253}\t@ 0xfd\n+\tbl\tffcc1668 <__cxa_finalize@plt+0xffcc0658>\n ./src/model.c:644\n \tandcs\tr4, r1, #87031808\t@ 0x5300000\n \tstrtmi\tr2, [r0], -r4, lsl #2\n-\tldc\t7, cr15, [r6, #-1012]!\t@ 0xfffffc0c\n+\tldc\t7, cr15, [sl], {253}\t@ 0xfd\n ./src/model.c:644 (discriminator 1)\n \t\t\t@ instruction: 0xf0402801\n \tstmdavs\tr4!, {r0, r8, pc}\n ./src/model.c:641\n-\tbleq\t3f690 <__cxa_finalize@plt+0x3e680>\n+\tbleq\t3f7c8 <__cxa_finalize@plt+0x3e7b8>\n \tstmdaeq\tr8!, {r0, r2, r3, r8, ip, sp, lr, pc}^\n ./src/model.c:668\n \tldmdbeq\tr4!, {r0, r2, r3, r8, ip, sp, lr, pc}\n \tldrbmi\tr9, [r3], -r2, lsl #8\n ./src/model.c:657\n \ttstcs\tr1, r2, lsr r2\n \t\t\t@ instruction: 0xf7fd4640\n-\tstmdacs\tr0, {r1, r2, r5, r8, sl, fp, sp, lr, pc}\n+\tstmdacs\tr0, {r1, r3, r7, sl, fp, sp, lr, pc}\n ./src/model.c:657 (discriminator 1)\n \tsbchi\tpc, r7, r0\n ./src/model.c:659\n \tvtst.8\td18, d0, d17\n \t\t\t@ instruction: 0x46c680d2\n ./src/model.c:668\n \tstrbmi\tr4, [ip], -ip, asr #13\n@@ -3520,114 +3639,114 @@\n \t\t\t@ instruction: 0x000fe8be\n \tandeq\tlr, pc, ip, lsr #17\n \t\t\t@ instruction: 0x000fe8be\n \tandeq\tlr, pc, ip, lsr #17\n \tmuleq\tpc, lr, r8\t@ \n \tandeq\tlr, pc, ip, lsl #17\n ./src/model.c:673\n-\tbeq\tfebec <__cxa_finalize@plt+0xfdbdc>\n+\tbeq\tfed24 <__cxa_finalize@plt+0xfdd14>\n ./src/model.c:674\n-\tbeq\t17ecf0 <__cxa_finalize@plt+0x17dce0>\n+\tbeq\t17ee28 <__cxa_finalize@plt+0x17de18>\n ./src/model.c:677\n \tldc\t6, cr4, [r4, #192]\t@ 0xc0\n ./src/model.c:675\n \tstrcc\tr1, [ip], #-2564\t@ 0xfffff5fc\n ./src/model.c:673\n-\tbeq\t3ebc0 <__cxa_finalize@plt+0x3dbb0>\n+\tbeq\t3ecf8 <__cxa_finalize@plt+0x3dce8>\n ./src/model.c:674\n-\tbeq\t7ecc4 <__cxa_finalize@plt+0x7dcb4>\n+\tbeq\t7edfc <__cxa_finalize@plt+0x7ddec>\n ./src/model.c:675\n-\tbne\tbebc8 <__cxa_finalize@plt+0xbdbb8>\n+\tbne\tbed00 <__cxa_finalize@plt+0xbdcf0>\n ./src/model.c:677\n \t\t\t@ instruction: 0xf97ef7ff\n ./src/model.c:670 (discriminator 1)\n \tstrhle\tr4, [sp, #44]!\t@ 0x2c\n ./src/model.c:680\n-\tbleq\t7f9ec <__cxa_finalize@plt+0x7e9dc>\n+\tbleq\t7fb24 <__cxa_finalize@plt+0x7eb14>\n \t\t\t@ instruction: 0xf10de7cd\n ./src/model.c:594\n \t\t\t@ instruction: 0x4c760928\n ./src/model.c:592\n \tvst1.16\t{d20-d22}, [pc :64], r2\n \tldrtmi\tr7, [r8], -r0, lsl #3\n ./src/model.c:280\n \t\t\t@ instruction: 0xf7fd447c\n ./src/model.c:592\n-\t\t\t@ instruction: 0xf8c9ebec\n+\t\t\t@ instruction: 0xf8c9eb50\n ./src/model.c:594\n \tand\tr7, r1, r0\n ./src/model.c:282\n \tstmdblt\tfp!, {r0, r1, fp, ip, sp, lr}\n ./src/model.c:280\n \tstrbmi\tr4, [r8], -r1, lsr #12\n \t\t\t@ instruction: 0xf8ecf7ff\n ./src/model.c:280 (discriminator 1)\n \tmvnsle\tr2, r0, lsl #16\n ./src/model.c:597\n \tldrbtmi\tr4, [r9], #-2413\t@ 0xfffff693\n-\tldcl\t7, cr15, [lr], #1012\t@ 0x3f4\n+\tstcl\t7, cr15, [r2], #-1012\t@ 0xfffffc0c\n ./src/model.c:597 (discriminator 1)\n \torrsle\tr2, fp, r0, lsl #16\n ./src/model.c:280\n \t\t\t@ instruction: 0xf04f4d6b\n ./src/model.c:317\n \tldrbtmi\tr0, [sp], #-2080\t@ 0xfffff7e0\n ./src/model.c:605\n \tvst1.16\t{d20-d22}, [pc :64], r2\n \tldrtmi\tr7, [r8], -r0, lsl #3\n-\tbl\tff441600 <__cxa_finalize@plt+0xff4405f0>\n+\tbl\td41738 <__cxa_finalize@plt+0xd40728>\n ./src/model.c:605 (discriminator 1)\n \tsubsle\tr2, r2, r0, lsl #16\n ./src/model.c:312\n \t\t\t@ instruction: 0x463a783b\n ./src/model.c:315\n \tcmnlt\tr3, r0, lsl #2\n ./src/model.c:314\n \tsvclt\t0x00182b0d\n \tsvclt\t0x00082b0a\n ./src/model.c:315\n \tandle\tr7, r4, r1, lsl r0\n ./src/model.c:316\n-\tblcs\t261674 <__cxa_finalize@plt+0x260664>\n+\tblcs\t2617ac <__cxa_finalize@plt+0x26079c>\n ./src/model.c:317\n \t\t\t@ instruction: 0xf882bf08\n \t\t\t@ instruction: 0xf8128000\n ./src/model.c:312\n-\tblcs\t13238 <__cxa_finalize@plt+0x12228>\n+\tblcs\t13370 <__cxa_finalize@plt+0x12360>\n \tstcge\t1, cr13, [r6], {240}\t@ 0xf0\n ./src/model.c:609\n \tand\tr6, r1, r7, lsr #32\n ./src/model.c:282\n \tstmdblt\tfp!, {r0, r1, fp, ip, sp, lr}\n ./src/model.c:280\n \tstrtmi\tr4, [r0], -r9, lsr #12\n \t\t\t@ instruction: 0xf8bcf7ff\n ./src/model.c:280 (discriminator 1)\n \tmvnsle\tr2, r0, lsl #16\n ./src/model.c:613\n \tldrbtmi\tr4, [r9], #-2391\t@ 0xfffff6a9\n-\tstcl\t7, cr15, [lr], {253}\t@ 0xfd\n+\tldc\t7, cr15, [r2], #-1012\t@ 0xfffffc0c\n ./src/model.c:613 (discriminator 1)\n \tbicsle\tr2, r3, r0, lsl #16\n ./src/model.c:617\n \tstrtmi\tsl, [r0], -r7, lsl #22\n \tmovwls\tr4, #9753\t@ 0x2619\n \t\t\t@ instruction: 0xf9e0f7ff\n ./src/model.c:617 (discriminator 1)\n \trsbsle\tr2, fp, r0, lsl #16\n-\tbleq\t83faa0 <__cxa_finalize@plt+0x83ea90>\n+\tbleq\t83fbd8 <__cxa_finalize@plt+0x83ebc8>\n \tldrbmi\tr4, [r9], -r0, lsr #12\n \t\t\t@ instruction: 0xf9d8f7ff\n \trsbsle\tr2, r3, r0, lsl #16\n ./src/model.c:617 (discriminator 2)\n \tstcge\t6, cr4, [r9], {32}\n \t\t\t@ instruction: 0xf7ff4621\n \tstmdacs\tr0, {r0, r4, r6, r7, r8, fp, ip, sp, lr, pc}\n ./src/model.c:617 (discriminator 1)\n-\tblls\tb7838 <__cxa_finalize@plt+0xb6828>\n+\tblls\tb7970 <__cxa_finalize@plt+0xb6960>\n ./src/model.c:630\n \tldcl\t6, cr4, [sp, #192]\t@ 0xc0\n ./src/model.c:627\n \tvldr\ts0, [sp, #36]\t@ 0x24\n ./src/model.c:628\n \tvldr\ts2, [r3, #32]\n ./src/model.c:626\n@@ -3639,33 +3758,33 @@\n ./src/model.c:626\n \t\t\t@ instruction: 0xf7ff0a00\n ./src/model.c:630\n \tldrbmi\tpc, [r2], -r7, lsl #18\t@ \n ./src/model.c:605\n \torrvc\tpc, r0, pc, asr #8\n \t\t\t@ instruction: 0xf7fd4638\n-\tstmdacs\tr0, {r1, r2, r3, r4, r5, r6, r8, r9, fp, sp, lr, pc}\n+\tstmdacs\tr0, {r1, r5, r6, r7, r9, fp, sp, lr, pc}\n ./src/model.c:605 (discriminator 1)\n \tldmdavs\tr3!, {r2, r3, r5, r7, r8, ip, lr, pc}\n ./src/model.c:690 (discriminator 1)\n \t\t\t@ instruction: 0xf04f2400\n ./src/model.c:692\n \tldrshlt\tr3, [r3, #-95]\t@ 0xffffffa1\n \tstcne\t12, cr1, [r2], #396\t@ 0x18c\n \tldrtmi\tr4, [r0], -r1, lsr #12\n \tstrcc\tr9, [r3], #-1280\t@ 0xfffffb00\n \t\t\t@ instruction: 0xf932f7ff\n ./src/model.c:690 (discriminator 1)\n \tadcmi\tr6, r3, #3342336\t@ 0x330000\n \t\t\t@ instruction: 0x4650d8f4\n ./src/model.c:695\n-\tbl\t18c16d0 <__cxa_finalize@plt+0x18c06c0>\n+\tb\tff1c1808 <__cxa_finalize@plt+0xff1c07f8>\n ./src/model.c:697\n \t\t\t@ instruction: 0xf7ff4630\n-\tbmi\td01c80 <__cxa_finalize@plt+0xd00c70>\n+\tbmi\td01db8 <__cxa_finalize@plt+0xd00da8>\n ./src/model.c:699\n \tldrbtmi\tr4, [sl], #-2859\t@ 0xfffff4d5\n \tldmdavs\tsl, {r0, r1, r4, r6, r7, fp, ip, lr}\n \tsubsmi\tr9, sl, r7, ror #22\n \tmovweq\tpc, #79\t@ 0x4f\t@ \n \tldrtmi\tsp, [r0], -r6, asr #2\n \tpop\t{r0, r3, r5, r6, ip, sp, pc}\n@@ -3673,35 +3792,35 @@\n ./src/model.c:683\n \tsbcsle\tr4, r8, r3, lsr #11\n ./src/model.c:685\n \tsubcs\tr4, r0, #44032\t@ 0xac00\n \tstmdami\tfp!, {r0, r1, r8, fp, ip, pc}\n \tldrbtmi\tr5, [r8], #-2251\t@ 0xfffff735\n \tldmdavs\tfp, {r0, r8, sp}\n-\tbl\tffec170c <__cxa_finalize@plt+0xffec06fc>\n-\tblmi\t9bd650 <__cxa_finalize@plt+0x9bc640>\n+\tbl\t17c1844 <__cxa_finalize@plt+0x17c0834>\n+\tblmi\t9bd788 <__cxa_finalize@plt+0x9bc778>\n ./src/model.c:661\n \tstmdbls\tr3, {r1, r5, r9, sp}\n \tstmiapl\tfp, {r1, r2, r5, fp, lr}^\n \tldmdavs\tfp, {r3, r4, r5, r6, sl, lr}\n ./src/model.c:646\n \t\t\t@ instruction: 0xf7fd2101\n-\t\t\t@ instruction: 0x4650ebf0\n+\t\t\t@ instruction: 0x4650eb54\n ./src/model.c:647\n-\tbl\tdc1728 <__cxa_finalize@plt+0xdc0718>\n+\tb\tfe6c1860 <__cxa_finalize@plt+0xfe6c0850>\n ./src/model.c:234\n \t\t\t@ instruction: 0xf7fd68b0\n-\tldmdbvs\tr0!, {r1, r3, r7, r8, r9, fp, sp, lr, pc}^\n+\tldmdbvs\tr0!, {r1, r2, r3, r5, r6, r7, r9, fp, sp, lr, pc}^\n ./src/model.c:235\n-\tbl\tfe1c1734 <__cxa_finalize@plt+0xfe1c0724>\n+\tb\tffac186c <__cxa_finalize@plt+0xffac085c>\n ./src/model.c:236\n \t\t\t@ instruction: 0xf7fd6a30\n-\tldrtmi\tlr, [r0], -r4, lsl #23\n+\tldrtmi\tlr, [r0], -r8, ror #21\n ./src/model.c:237\n-\tbl\tfe041740 <__cxa_finalize@plt+0xfe040730>\n+\tb\tff941878 <__cxa_finalize@plt+0xff940868>\n ./src/model.c:567\n \tstrb\tr2, [r8, r0, lsl #12]\n ./src/model.c:646\n \teorcs\tr4, r3, #24, 22\t@ 0x6000\n \tldmdami\tsl, {r0, r1, r8, fp, ip, pc}\n \tldrbtmi\tr5, [r8], #-2251\t@ 0xfffff735\n \t\t\t@ instruction: 0xe7e3681b\n@@ -3711,115 +3830,106 @@\n \tldrbtmi\tr5, [r8], #-2251\t@ 0xfffff735\n \tbfi\tr6, fp, #16, #12\n ./src/model.c:566\n \t\t\t@ instruction: 0x46224b10\n \tldmdbmi\tr4, {r0, r1, fp, ip, pc}\n \tldrbtmi\tr5, [r9], #-2243\t@ 0xfffff73d\n \t\t\t@ instruction: 0xf7fd6818\n-\tubfx\tlr, r2, #23, #4\n+\t\t\t@ instruction: 0xe7e3eb36\n ./src/model.c:699\n-\tbl\tff84177c <__cxa_finalize@plt+0xff84076c>\n-\tandeq\tip, r1, r0, lsl #20\n-\tstrdeq\tip, [r1], -sl\n-\tandeq\tr1, r0, lr, asr #26\n+\tbl\t11418b4 <__cxa_finalize@plt+0x11408a4>\n+\tandeq\tip, r1, r8, asr #17\n+\tandeq\tip, r1, r2, asr #17\n+\tandeq\tr2, r0, r6, lsr r5\n \tandeq\tr0, r0, r4, lsl r1\n-\tandeq\tr1, r0, r6, asr fp\n-\tandeq\tr1, r0, sl, lsl #26\n-\tmuleq\tr0, r0, sl\n-\tandeq\tr1, r0, sl, asr #24\n-\tandeq\tr1, r0, r2, ror #20\n-\tstrdeq\tr1, [r0], -r2\n-\tandeq\tip, r1, lr, ror #15\n+\tandeq\tr2, r0, lr, lsr r3\n+\tstrdeq\tr2, [r0], -r2\t@ \n+\tandeq\tr2, r0, r8, ror r2\n+\tandeq\tr2, r0, r2, lsr r4\n+\tandeq\tr2, r0, sl, asr #4\n+\tldrdeq\tr2, [r0], -sl\n+\t\t\t@ instruction: 0x0001c6b6\n \tandeq\tr0, r0, ip, lsl r1\n-\tandeq\tr1, r0, sl, lsr #23\n-\tandeq\tr1, r0, r0, ror fp\n-\tandeq\tr1, r0, r6, lsl fp\n-\tldrdeq\tr1, [r0], -lr\n-\tandeq\tr1, r0, r6, asr #18\n+\tmuleq\tr0, r2, r3\n+\tandeq\tr2, r0, r8, asr r3\n+\tstrdeq\tr2, [r0], -lr\n+\tandeq\tr2, r0, r6, asr #5\n+\tandeq\tr2, r0, lr, lsr #2\n triangularize_recurse():\n ./src/triangularization.c:29\n \tsvcmi\t0x00f0e92d\n \tstcpl\t4, cr15, [r0], {79}\t@ 0x4f\n-\tblhi\t23ec8c <__cxa_finalize@plt+0x23dc7c>\n+\tblhi\t23edc4 <__cxa_finalize@plt+0x23ddb4>\n \t\t\t@ instruction: 0x0c0cebad\n \tsvceq\t0x0090f8cc\n \tldrmi\tfp, [r6], -fp, lsl #1\n ./src/triangularization.c:30\n \tmovwls\tr2, #11778\t@ 0x2e02\n ./src/triangularization.c:29\n-\tbls\t7166d0 <__cxa_finalize@plt+0x7156c0>\n+\tbls\t716808 <__cxa_finalize@plt+0x7157f8>\n \tmovwls\tr4, #33915\t@ 0x847b\n ./src/triangularization.c:30\n \tandhi\tpc, r2, #64, 6\n ./src/triangularization.c:69\n-\tbls\tfed7ef74 <__cxa_finalize@plt+0xfed7df64>\n+\tbls\tfed7f0ac <__cxa_finalize@plt+0xfed7e09c>\n ./src/triangularization.c:49\n \tstmdaeq\tip, {r0, r1, r2, r3, r6, ip, sp, lr, pc}\n-point_in_triangle():\n ./src/triangularization.c:25\n-\tblhi\tfec7ee7c <__cxa_finalize@plt+0xfec7de6c>\n+\tblhi\tfec7efb4 <__cxa_finalize@plt+0xfec7dfa4>\n \tstrmi\tr4, [r3], ip, lsl #13\n \tmcrcs\t6, 0, r4, cr3, cr6, {4}\n-triangularize_recurse():\n ./src/triangularization.c:32\n-\tbls\t3f2e4 <__cxa_finalize@plt+0x3e2d4>\n+\tbls\t3f41c <__cxa_finalize@plt+0x3e40c>\n \tmrshi\tpc, (UNDEF: 14)\t@ \n ./src/triangularization.c:45\n \t\t\t@ instruction: 0xf1061074\n-\tbl\t112014 <__cxa_finalize@plt+0x111004>\n+\tbl\t11214c <__cxa_finalize@plt+0x11113c>\n \tstmib\tsp, {r1, r2, r9, fp}^\n \tldrbmi\tip, [r5], -r3, lsl #28\n \tandeq\tlr, r4, r9, lsl #22\n \t\t\t@ instruction: 0xf0014631\n-\tstrmi\tpc, [pc], -pc, lsl #19\n+\t\t\t@ instruction: 0x460ff8f3\n ./src/triangularization.c:46\n \tldrtmi\tr4, [r1], -r0, lsr #12\n \t\t\t@ instruction: 0xf0013401\n-\tstrtmi\tpc, [r0], -r9, lsl #19\n+\tstrtmi\tpc, [r0], -sp, ror #17\n \tldrtmi\tr4, [r1], -sl, lsl #13\n ./src/triangularization.c:47\n-\t\t\t@ instruction: 0xf984f001\n+\t\t\t@ instruction: 0xf8e8f001\n ./src/triangularization.c:49\n \tandlt\tpc, r7, r8, lsl #22\n-\tbmi\t3ef88 <__cxa_finalize@plt+0x3df78>\n-\tbcc\t7ee8c <__cxa_finalize@plt+0x7de7c>\n+\tbmi\t3f0c0 <__cxa_finalize@plt+0x3e0b0>\n+\tbcc\t7efc4 <__cxa_finalize@plt+0x7dfb4>\n ./src/triangularization.c:50\n \tandlt\tpc, sl, r8, lsl #22\n-\tbpl\t3ee94 <__cxa_finalize@plt+0x3de84>\n-\tbpl\t7ef98 <__cxa_finalize@plt+0x7df88>\n+\tbpl\t3efcc <__cxa_finalize@plt+0x3dfbc>\n+\tbpl\t7f0d0 <__cxa_finalize@plt+0x7e0c0>\n ./src/triangularization.c:51\n \tandlt\tpc, r1, r8, lsl #22\n-vec3_sub():\n ./src/trigonometry.h:68\n-\tbvc\tff17f230 <__cxa_finalize@plt+0xff17e220>\n+\tbvc\tff17f368 <__cxa_finalize@plt+0xff17e358>\n ./src/trigonometry.h:69\n-\tbcs\t197f230 <__cxa_finalize@plt+0x197e220>\n-triangularize_recurse():\n+\tbcs\t197f368 <__cxa_finalize@plt+0x197e358>\n ./src/triangularization.c:51\n-\tbcc\t7efa8 <__cxa_finalize@plt+0x7df98>\n-\tbmi\t3eeac <__cxa_finalize@plt+0x3de9c>\n-vec3_sub():\n+\tbcc\t7f0e0 <__cxa_finalize@plt+0x7e0d0>\n+\tbmi\t3efe4 <__cxa_finalize@plt+0x3dfd4>\n ./src/trigonometry.h:69\n-\tbvs\tff97f23c <__cxa_finalize@plt+0xff97e22c>\n+\tbvs\tff97f374 <__cxa_finalize@plt+0xff97e364>\n ./src/trigonometry.h:68\n-\tbvc\t117f144 <__cxa_finalize@plt+0x117e134>\n-triangularize_recurse():\n-./src/trigonometry.h:90\n-\tbvc\tfe9bf214 <__cxa_finalize@plt+0xfe9be204>\n-vec3_cross_product():\n+\tbvc\t117f27c <__cxa_finalize@plt+0x117e26c>\n ./src/trigonometry.h:90\n-\tbvc\t8bf1d8 <__cxa_finalize@plt+0x8be1c8>\n-triangularize_recurse():\n+\tbvc\tfe9bf34c <__cxa_finalize@plt+0xfe9be33c>\n+\tbvc\t8bf310 <__cxa_finalize@plt+0x8be300>\n ./src/triangularization.c:56\n-\tbvc\t103f454 <__cxa_finalize@plt+0x103e444>\n-\tblx\t43f448 <__cxa_finalize@plt+0x43e438>\n+\tbvc\t103f58c <__cxa_finalize@plt+0x103e57c>\n+\tblx\t43f580 <__cxa_finalize@plt+0x43e570>\n \tcdp\t0, 15, cr13, cr5, cr11, {0}\n ./src/triangularization.c:56 (discriminator 2)\n-\tblls\ta238c <__cxa_finalize@plt+0xa137c>\n-\tblx\t43f454 <__cxa_finalize@plt+0x43e444>\n+\tblls\ta24c4 <__cxa_finalize@plt+0xa14b4>\n+\tblx\t43f58c <__cxa_finalize@plt+0x43e57c>\n \tandcs\tfp, r1, ip, asr #31\n \taddsmi\tr2, r8, #0\n \tadcmi\tsp, ip, #1073741824\t@ 0x40000000\n ./src/triangularization.c:43 (discriminator 1)\n \tcdp\t1, 7, cr13, cr3, cr0, {6}\n ./src/triangularization.c:65\n \tvsub.f32\ts3, s9, s6\n@@ -3829,29 +3939,28 @@\n \tvsub.f32\ts23, s8, s7\n ./src/triangularization.c:64\n \tvmov.f32\ts20, s9\n ./src/triangularization.c:69\n \tvnmul.f32\ts20, s2, s19\n ./src/triangularization.c:65\n \tldrbmi\tr1, [r5], -r4, lsr #21\n-\tbne\tfe0ff0dc <__cxa_finalize@plt+0xfe0fe0cc>\n+\tbne\tfe0ff214 <__cxa_finalize@plt+0xfe0fe204>\n ./src/triangularization.c:70 (discriminator 1)\n \t\t\t@ instruction: 0x465846da\n ./src/triangularization.c:70\n \t\t\t@ instruction: 0xf04f2200\n ./src/triangularization.c:68\n \taddsmi\tr3, r5, #-16777216\t@ 0xff000000\n ./src/triangularization.c:72\n \taddsmi\tfp, r7, #24, 30\t@ 0x60\n \taddsmi\tsp, r1, #124\t@ 0x7c\n ./src/triangularization.c:72 (discriminator 2)\n \tldc\t0, cr13, [r0, #488]\t@ 0x1e8\n ./src/triangularization.c:75\n \tvadd.f32\ts13, s10, s2\n-triangle_area():\n ./src/triangularization.c:15\n \tvnmul.f32\ts12, s3, s7\n \tvldr\ts0, [r0, #532]\t@ 0x214\n \tvadd.f32\ts4, s12, s0\n \tvsub.f32\ts15, s10, s6\n \tvmls.f32\ts14, s9, s12\n \tvadd.f32\ts1, s7, s13\n@@ -3862,91 +3971,78 @@\n \tvmul.f32\ts1, s14, s5\n \tvmla.f32\ts14, s5, s8\n \tvmla.f32\ts15, s1, s4\n \tvadd.f32\ts15, s7, s10\n \tvmls.f32\ts1, s4, s12\n \tvadd.f32\ts15, s12, s13\n \t\t\t@ instruction: 0xeeb56a63\n-absfloat():\n ./src/triangularization.c:10\n \tvnmul.f32\ts1, s13, s0\n-triangle_area():\n ./src/triangularization.c:15\n \tvmla.f32\ts13, s1, s9\n \t\t\t@ instruction: 0xeef16a84\n-absfloat():\n ./src/triangularization.c:10\n \tmrc\t10, 5, APSR_nzcv, cr5, cr0, {0}\n \tvmls.f32\ts15, s3, s0\n-triangle_area():\n ./src/triangularization.c:15\n \tsvclt\t0x00b86a82\n-absfloat():\n ./src/triangularization.c:10 (discriminator 2)\n-\tbeq\t103f400 <__cxa_finalize@plt+0x103e3f0>\n+\tbeq\t103f538 <__cxa_finalize@plt+0x103e528>\n ./src/triangularization.c:10\n-\tblx\t43f504 <__cxa_finalize@plt+0x43e4f4>\n-\tbvc\tff03f518 <__cxa_finalize@plt+0xff03e508>\n-\tbeq\t27f1c8 <__cxa_finalize@plt+0x27e1b8>\n+\tblx\t43f63c <__cxa_finalize@plt+0x43e62c>\n+\tbvc\tff03f650 <__cxa_finalize@plt+0xff03e640>\n+\tbeq\t27f300 <__cxa_finalize@plt+0x27e2f0>\n ./src/triangularization.c:10 (discriminator 2)\n \tmrc\t15, 5, fp, cr1, cr8, {5}\n \tvneg.f32\ts15, s14\n ./src/triangularization.c:10\n \tvmrs\tpc, mvfr2\n \tvcvt.f64.f32\td6, s0\n-point_in_triangle():\n ./src/triangularization.c:25\n \tvnmul.f32\ts0, s15, s0\n \tsvclt\t0x00b87a09\n-absfloat():\n ./src/triangularization.c:10 (discriminator 2)\n-\tbvc\t19ff528 <__cxa_finalize@plt+0x19fe518>\n+\tbvc\t19ff660 <__cxa_finalize@plt+0x19fe650>\n ./src/triangularization.c:10\n-\tblx\t43f52c <__cxa_finalize@plt+0x43e51c>\n-point_in_triangle():\n+\tblx\t43f664 <__cxa_finalize@plt+0x43e654>\n ./src/triangularization.c:25\n-\tbleq\t23f1ec <__cxa_finalize@plt+0x23e1dc>\n-\tbvc\tfe27f30c <__cxa_finalize@plt+0xfe27e2fc>\n-absfloat():\n+\tbleq\t23f324 <__cxa_finalize@plt+0x23e314>\n+\tbvc\tfe27f444 <__cxa_finalize@plt+0xfe27e434>\n ./src/triangularization.c:10 (discriminator 2)\n \tmrc\t15, 7, fp, cr1, cr8, {5}\n \tvsub.f32\ts12, s14, s13\n-point_in_triangle():\n ./src/triangularization.c:25\n \tvmla.f32\ts14, s12, s15\n \t\t\t@ instruction: 0xeeb77a89\n \tvcmpe.f32\ts14, s14\n-triangularize_recurse():\n ./src/triangularization.c:75 (discriminator 1)\n \tvsqrt.f64\td23, d0\n \tldmdale\tpc, {r4, r9, fp, ip, sp, lr, pc}\t@ \n ./src/triangularization.c:78\n-\tbvs\tfe1bf238 <__cxa_finalize@plt+0xfe1be228>\n-\tbvs\tbf1c0 <__cxa_finalize@plt+0xbe1b0>\n-\tbvs\t7f270 <__cxa_finalize@plt+0x7e260>\n-absfloat():\n+\tbvs\tfe1bf370 <__cxa_finalize@plt+0xfe1be360>\n+\tbvs\tbf2f8 <__cxa_finalize@plt+0xbe2e8>\n+\tbvs\t7f3a8 <__cxa_finalize@plt+0x7e398>\n ./src/triangularization.c:10\n-\tbvs\tff03f470 <__cxa_finalize@plt+0xff03e460>\n-\tblx\t43f564 <__cxa_finalize@plt+0x43e554>\n+\tbvs\tff03f5a8 <__cxa_finalize@plt+0xff03e598>\n+\tblx\t43f69c <__cxa_finalize@plt+0x43e68c>\n ./src/triangularization.c:10 (discriminator 2)\n \tmrc\t15, 5, fp, cr1, cr8, {5}\n \t\t\t@ instruction: 0x1c636a46\n-triangularize_recurse():\n ./src/triangularization.c:80\n \tmrc\t0, 5, sp, cr4, cr1, {2}\n ./src/triangularization.c:80 (discriminator 1)\n \tvsqrt.f32\ts13, s20\n \tvmovle\ts0, s1, pc, ip\n ./src/triangularization.c:70 (discriminator 2)\n \tcdp\t2, 11, cr3, cr0, cr1, {0}\n ./src/triangularization.c:80 (discriminator 1)\n \tandcc\tr6, ip, sl, asr #20\n ./src/triangularization.c:70 (discriminator 1)\n \tstrhle\tr4, [fp], #-34\t@ 0xffffffde\n-\tbge\t11bf484 <__cxa_finalize@plt+0x11be474>\n+\tbge\t11bf5bc <__cxa_finalize@plt+0x11be5ac>\n ./src/triangularization.c:72\n \tsvclt\t0x00184295\n \t\t\t@ instruction: 0xd1824297\n ./src/triangularization.c:70 (discriminator 2)\n \tandcc\tr3, ip, r1, lsl #4\n ./src/triangularization.c:70 (discriminator 1)\n \t\t\t@ instruction: 0xf47f42b2\n@@ -3961,25 +4057,25 @@\n ./src/triangularization.c:92\n \t\t\t@ instruction: 0xf8ce2025\n \t\t\t@ instruction: 0xf85c2004\n ./src/triangularization.c:93\n \t\t\t@ instruction: 0xf8ce2021\n \tadcmi\tr2, r5, #8\n ./src/triangularization.c:98\n-\tblx\t237a2e <__cxa_finalize@plt+0x236a1e>\n+\tblx\t237b66 <__cxa_finalize@plt+0x236b56>\n ./src/triangularization.c:101\n \t\t\t@ instruction: 0xf85cb204\n ./src/triangularization.c:100\n-\tblx\t207a96 <__cxa_finalize@plt+0x206a86>\n+\tblx\t207bce <__cxa_finalize@plt+0x206bbe>\n ./src/triangularization.c:101\n \t\t\t@ instruction: 0xf84cb30a\n ./src/triangularization.c:100\n \t\t\t@ instruction: 0xf10a102a\n ./src/triangularization.c:101\n-\tbgt\t1c6214 <__cxa_finalize@plt+0x1c5204>\n+\tbgt\t1c634c <__cxa_finalize@plt+0x1c533c>\n \tandeq\tlr, r7, r3, lsl #17\n ./src/triangularization.c:96 (discriminator 2)\n \tadcsmi\tr3, r4, #16777216\t@ 0x1000000\n ./src/triangularization.c:96 (discriminator 1)\n \tstrbmi\tsp, [sl, #493]\t@ 0x1ed\n ./src/triangularization.c:104\n \trscshi\tpc, r5, r0, asr #32\n@@ -4004,31 +4100,31 @@\n ./src/triangularization.c:70 (discriminator 2)\n \tandcc\tr3, ip, r1, lsl #4\n ./src/triangularization.c:70 (discriminator 1)\n \t\t\t@ instruction: 0xd1b342b2\n ./src/triangularization.c:117\n \tstrbtmi\tr2, [r3], ip, lsl #6\n \teor\tpc, r4, sp, asr #17\n-\tblx\td55aa <__cxa_finalize@plt+0xd459a>\n+\tblx\td56e2 <__cxa_finalize@plt+0xd46d2>\n \tldrtmi\tpc, [r8], -r6, lsl #14\t@ \n-\tb\t18c1a60 <__cxa_finalize@plt+0x18c0a50>\n+\tstmib\tr6, {r0, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}^\n \tldrtmi\tr4, [r8], -r3, lsl #12\n ./src/triangularization.c:119\n \t\t\t@ instruction: 0x469a00b7\n ./src/triangularization.c:117\n \t\t\t@ instruction: 0xf7fd9304\n ./src/triangularization.c:118\n-\tpkhtbmi\tlr, r0, ip, asr #20\n+\tstrmi\tlr, [r0], r0, asr #19\n \tldrtmi\tr9, [r8], -r5\n ./src/triangularization.c:119\n-\tb\t15c1a78 <__cxa_finalize@plt+0x15c0a68>\n+\tldmib\tsl!, {r0, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}\n \tldrtmi\tr4, [r8], -r3, lsl #12\n \tldrmi\tr9, [pc], -r6, lsl #6\n ./src/triangularization.c:120\n-\tb\t1441a84 <__cxa_finalize@plt+0x1440a74>\n+\tldmib\tr4!, {r0, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}\n ./src/triangularization.c:122\n \t\t\t@ instruction: 0x46414652\n \tsvclt\t0x00182900\n \tandls\tr2, r7, r0, lsl #20\n \taddshi\tpc, r6, r0\n ./src/triangularization.c:122 (discriminator 1)\n \tsvclt\t0x00182800\n@@ -4042,29 +4138,29 @@\n \tstrmi\tr4, [r7], -r0, lsl #13\n ./src/triangularization.c:110\n \tstrmi\tr4, [r4], -lr, lsr #13\n \tsvclt\t0x0000e02b\n \tmrrcvc\t4, 7, ip, sl, cr2\n \tsvccc\t0x00f0000a\n \tandeq\tr0, r0, r0\n-\tandeq\tip, r1, r8, ror #13\n+\t\t\t@ instruction: 0x0001c5b0\n ./src/triangularization.c:133\n \tandcs\tr9, ip, r4, lsl #20\n ./src/triangularization.c:136\n \t\t\t@ instruction: 0xf0849905\n ./src/triangularization.c:139\n-\tblx\t4ae6 <__cxa_finalize@plt+0x3ad6>\n+\tblx\t4c1e <__cxa_finalize@plt+0x3c0e>\n ./src/triangularization.c:133\n \tldrmi\tr2, [r5], -r7, lsl #4\n ./src/triangularization.c:136\n \tandne\tpc, r8, #0, 22\n \tldm\tr9, {r0, r1, r9, ip, pc}\n ./src/triangularization.c:133\n \tstm\tr5, {r0, r1, r2}\n-\tbls\t183b10 <__cxa_finalize@plt+0x182b00>\n+\tbls\t183c48 <__cxa_finalize@plt+0x182c38>\n ./src/triangularization.c:136\n \t\t\t@ instruction: 0xf8429d03\n ./src/triangularization.c:134\n \tstrcc\tr3, [r1, -r7, lsr #32]\n ./src/triangularization.c:136\n \tmuleq\tr7, r9, r8\n \tandeq\tlr, r7, r5, lsl #17\n@@ -4080,15 +4176,15 @@\n \t\t\t@ instruction: 0xf85cd01a\n ./src/triangularization.c:134\n \tldrbmi\tr3, [sl, #3844]\t@ 0xf04\n ./src/triangularization.c:131\n \tldrbmi\tfp, [lr, #3864]\t@ 0xf18\n \tstccs\t0, cr13, [r0], {214}\t@ 0xd6\n ./src/triangularization.c:141\n-\tbls\t137c34 <__cxa_finalize@plt+0x136c24>\n+\tbls\t137d6c <__cxa_finalize@plt+0x136d5c>\n ./src/triangularization.c:143\n \t\t\t@ instruction: 0xf10b210c\n ./src/triangularization.c:129 (discriminator 2)\n \tldrmi\tr0, [r3, #2817]!\t@ 0xb01\n ./src/triangularization.c:143\n \tstrcs\tpc, [r7, #-2817]\t@ 0xfffff4ff\n \tmuleq\tr7, r9, r8\n@@ -4111,33 +4207,33 @@\n \tstrtmi\tr9, [fp], -r4, lsl #28\n \tstrbmi\tr9, [r9], -r9, lsl #24\n \tstrls\tr4, [r0], #-1584\t@ 0xfffff9d0\n \tmcr2\t7, 1, pc, cr12, cr15, {7}\t@ \n ./src/triangularization.c:157\n \t\t\t@ instruction: 0x200c1eb9\n \tstcls\t6, cr4, [r7, #-172]\t@ 0xffffff54\n-\tblx\t1548a <__cxa_finalize@plt+0x1447a>\n+\tblx\t155c2 <__cxa_finalize@plt+0x145b2>\n \tstcls\t1, cr4, [r5], {1}\n \tstrtmi\tr9, [r9], -r0, lsl #2\n \t\t\t@ instruction: 0xf7ff4620\n \t\t\t@ instruction: 0x4630fe1f\n ./src/triangularization.c:159\n-\tldmdb\tip, {r0, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}^\n+\tstmia\tr0, {r0, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}^\n ./src/triangularization.c:160\n \t\t\t@ instruction: 0xf7fd4620\n-\t\t\t@ instruction: 0x4648e95a\n+\t\t\t@ instruction: 0x4648e8be\n ./src/triangularization.c:161\n-\tldmdb\tr6, {r0, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}^\n+\tldm\tsl!, {r0, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}\n ./src/triangularization.c:162\n \tandlt\tr4, fp, r8, lsr #12\n ./src/triangularization.c:164\n-\tblhi\t23ee9c <__cxa_finalize@plt+0x23de8c>\n+\tblhi\t23efd4 <__cxa_finalize@plt+0x23dfc4>\n \tsvcmi\t0x00f0e8bd\n ./src/triangularization.c:162\n-\tstmdblt\tip, {r0, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}^\n+\tldmlt\tr0!, {r0, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}\n ./src/triangularization.c:149\n \ttstcs\tip, r5, lsl #20\n \tstrcs\tpc, [r8, #-2817]\t@ 0xfffff4ff\n \tmuleq\tr7, r9, r8\n \tandeq\tlr, r7, r5, lsl #17\n ./src/triangularization.c:150\n \t\t\t@ instruction: 0xf8429a07\n@@ -4145,254 +4241,235 @@\n ./src/triangularization.c:151\n \tstr\tr0, [r0, r1, lsl #16]!\n ./src/triangularization.c:124\n \teorcs\tr4, r2, #19456\t@ 0x4c00\n \ttstcs\tr1, r8, lsl #24\n \tstmiapl\tr3!, {r1, r4, fp, lr}^\n \tldmdavs\tfp, {r3, r4, r5, r6, sl, lr}\n-\tldmib\tr6, {r0, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}\n+\tldm\tsl!, {r0, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}^\n ./src/triangularization.c:125\n \t\t\t@ instruction: 0xf7fd2001\n-\tblmi\t3fe418 <__cxa_finalize@plt+0x3fd408>\n+\tblmi\t3fe2e0 <__cxa_finalize@plt+0x3fd2d0>\n ./src/triangularization.c:155 (discriminator 1)\n \tstmdbmi\tpc, {r0, r1, r3, r4, r7, r9, sp}\t@ \n \tldrbtmi\tr4, [fp], #-2063\t@ 0xfffff7f1\n \tldrbtmi\tr4, [r8], #-1145\t@ 0xfffffb87\n-\tldmdb\tr0, {r0, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}\n+\tldmda\tr4!, {r0, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}^\n ./src/triangularization.c:30 (discriminator 1)\n \tandscs\tr4, lr, #13312\t@ 0x3400\n \tstmdami\tlr, {r0, r2, r3, r8, fp, lr}\n \tldrbtmi\tr4, [r9], #-1147\t@ 0xfffffb85\n \t\t\t@ instruction: 0xf7fd4478\n-\tblmi\t33e02c <__cxa_finalize@plt+0x33d01c>\n+\tblmi\t33def4 <__cxa_finalize@plt+0x33cee4>\n ./src/triangularization.c:104 (discriminator 1)\n \tstmdbmi\tip, {r3, r5, r6, r9, sp}\n \tldrbtmi\tr4, [fp], #-2060\t@ 0xfffff7f4\n \tldrbtmi\tr4, [r8], #-1145\t@ 0xfffffb87\n-\tldm\tlr!, {r0, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}^\n+\tstmda\tr2!, {r0, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}^\n \tandeq\tr0, r0, ip, lsl r1\n-\tandeq\tr1, r0, r4, lsl #8\n-\tandeq\tr2, r0, sl, ror #1\n-\tandeq\tr1, r0, ip, lsl #14\n-\tandeq\tr1, r0, r6, lsr r7\n-\tldrdeq\tr2, [r0], -r8\n-\tstrdeq\tr1, [r0], -sl\n-\tandeq\tr1, r0, r0, lsl r7\n-\tandeq\tr2, r0, r6, asr #1\n-\tandeq\tr1, r0, r8, ror #13\n-\tandeq\tr1, r0, r6, lsl #14\n+\tandeq\tr1, r0, ip, lsr #24\n+\tandeq\tr1, r0, r2, lsr #31\n+\tstrdeq\tr1, [r0], -r4\n+\tandeq\tr1, r0, lr, lsl pc\n+\tmuleq\tr0, r0, pc\t@ \n+\tandeq\tr1, r0, r2, ror #29\n+\tstrdeq\tr1, [r0], -r8\n+\tandeq\tr1, r0, lr, ror pc\n+\tldrdeq\tr1, [r0], -r0\n+\tandeq\tr1, r0, lr, ror #29\n triangularize():\n ./src/triangularization.c:167\n \tsvcmi\t0x00f0e92d\n \tstcpl\t4, cr15, [r0], {79}\t@ 0x4f\n-\tblhi\t2bf108 <__cxa_finalize@plt+0x2be0f8>\n+\tblhi\t2bf240 <__cxa_finalize@plt+0x2be230>\n \t\t\t@ instruction: 0x0c0cebad\n \tsvceq\t0x00a0f8cc\n-\tblmi\tfe46fe74 <__cxa_finalize@plt+0xfe46ee64>\n+\tblmi\tfe46ffac <__cxa_finalize@plt+0xfe46ef9c>\n ./src/triangularization.c:168\n \tldrbtmi\tr2, [fp], #-2306\t@ 0xfffff6fe\n ./src/triangularization.c:167\n \tvcgt.u8\td25, d0, d3\n ./src/triangularization.c:168\n \t\t\t@ instruction: 0x460c8110\n \tldrmi\tr4, [r0], r6, lsl #12\n-\tldc\t6, cr4, [pc, #20]\t@ 3c88 <__cxa_finalize@plt+0x2c78>\n+\tldc\t6, cr4, [pc, #20]\t@ 3dc0 <__cxa_finalize@plt+0x2db0>\n ./src/trigonometry.h:20\n \tstrmi\tfp, [r3], fp, lsl #21\n ./src/triangularization.c:174\n-\tbeq\t3fdb8 <__cxa_finalize@plt+0x3eda8>\n+\tbeq\t3fef0 <__cxa_finalize@plt+0x3eee0>\n ./src/triangularization.c:177\n \tldrbmi\tr2, [r1], ip, lsl #14\n-\tbeq\t800ac <__cxa_finalize@plt+0x7f09c>\n+\tbeq\t801e4 <__cxa_finalize@plt+0x7f1d4>\n \tldrbmi\tr4, [r0], -r1, lsr #12\n-\t\t\t@ instruction: 0xff5ef000\n+\tcdp2\t0, 12, cr15, cr2, cr0, {0}\n \t\t\t@ instruction: 0xf109460b\n ./src/triangularization.c:178\n \tstrtmi\tr0, [r1], -r2\n ./src/triangularization.c:177\n \tmovwvs\tpc, #15111\t@ 0x3b07\t@ \n-\tblt\t3f3e8 <__cxa_finalize@plt+0x3e3d8>\n-\tbgt\t7f2ec <__cxa_finalize@plt+0x7e2dc>\n-\tbgt\tbf3f0 <__cxa_finalize@plt+0xbe3e0>\n+\tblt\t3f520 <__cxa_finalize@plt+0x3e510>\n+\tbgt\t7f424 <__cxa_finalize@plt+0x7e414>\n+\tbgt\tbf528 <__cxa_finalize@plt+0xbe518>\n ./src/triangularization.c:178\n-\t\t\t@ instruction: 0xff50f000\n+\tcdp2\t0, 11, cr15, cr4, cr0, {0}\n \ttstpvs\tr1, r7, lsl #22\t@ p-variant is OBSOLETE\n-vec3_sub():\n ./src/trigonometry.h:68\n-\tbvc\t3f31c <__cxa_finalize@plt+0x3e30c>\n+\tbvc\t3f454 <__cxa_finalize@plt+0x3e444>\n ./src/trigonometry.h:70\n-\tbvs\tbf420 <__cxa_finalize@plt+0xbe410>\n+\tbvs\tbf558 <__cxa_finalize@plt+0xbe548>\n ./src/trigonometry.h:69\n-\tbvc\t7f424 <__cxa_finalize@plt+0x7e414>\n+\tbvc\t7f55c <__cxa_finalize@plt+0x7e54c>\n ./src/trigonometry.h:68\n-\tbvc\t1aff598 <__cxa_finalize@plt+0x1afe588>\n+\tbvc\t1aff6d0 <__cxa_finalize@plt+0x1afe6c0>\n ./src/trigonometry.h:70\n-\tbmi\tbf304 <__cxa_finalize@plt+0xbe2f4>\n-\tbvs\tffb3f69c <__cxa_finalize@plt+0xffb3e68c>\n+\tbmi\tbf43c <__cxa_finalize@plt+0xbe42c>\n+\tbvs\tffb3f7d4 <__cxa_finalize@plt+0xffb3e7c4>\n ./src/trigonometry.h:69\n-\tbvs\t7f30c <__cxa_finalize@plt+0x7e2fc>\n-\tbvc\tff33f6a8 <__cxa_finalize@plt+0xff33e698>\n+\tbvs\t7f444 <__cxa_finalize@plt+0x7e434>\n+\tbvc\tff33f7e0 <__cxa_finalize@plt+0xff33e7d0>\n ./src/trigonometry.h:68\n-\tbcc\t3f414 <__cxa_finalize@plt+0x3e404>\n+\tbcc\t3f54c <__cxa_finalize@plt+0x3e53c>\n ./src/trigonometry.h:70\n-\tbmi\t1b3f5a4 <__cxa_finalize@plt+0x1b3e594>\n+\tbmi\t1b3f6dc <__cxa_finalize@plt+0x1b3e6cc>\n ./src/trigonometry.h:69\n-\tbvs\t133f5b0 <__cxa_finalize@plt+0x133e5a0>\n+\tbvs\t133f6e8 <__cxa_finalize@plt+0x133e6d8>\n ./src/trigonometry.h:68\n-\tbcc\tffaff6a8 <__cxa_finalize@plt+0xffafe698>\n-triangularize():\n+\tbcc\tffaff7e0 <__cxa_finalize@plt+0xffafe7d0>\n ./src/trigonometry.h:89\n-\tbpl\t1ff570 <__cxa_finalize@plt+0x1fe560>\n-vec3_cross_product():\n+\tbpl\t1ff6a8 <__cxa_finalize@plt+0x1fe698>\n ./src/trigonometry.h:88\n-\tbmi\t9bf67c <__cxa_finalize@plt+0x9be66c>\n+\tbmi\t9bf7b4 <__cxa_finalize@plt+0x9be7a4>\n ./src/trigonometry.h:90\n-\tbpl\tfe9ff674 <__cxa_finalize@plt+0xfe9fe664>\n+\tbpl\tfe9ff7ac <__cxa_finalize@plt+0xfe9fe79c>\n ./src/trigonometry.h:89\n-\tbpl\tfe9bf538 <__cxa_finalize@plt+0xfe9be528>\n+\tbpl\tfe9bf670 <__cxa_finalize@plt+0xfe9be660>\n ./src/trigonometry.h:88\n-\tbmi\t9ff640 <__cxa_finalize@plt+0x9fe630>\n+\tbmi\t9ff778 <__cxa_finalize@plt+0x9fe768>\n ./src/trigonometry.h:90\n-\tbpl\t1ff64c <__cxa_finalize@plt+0x1fe63c>\n-triangularize():\n+\tbpl\t1ff784 <__cxa_finalize@plt+0x1fe774>\n ./src/trigonometry.h:12\n-\tbvs\t17f58c <__cxa_finalize@plt+0x17e57c>\n-vec3_mag():\n-./src/trigonometry.h:12\n-\tbvs\tfe93f50c <__cxa_finalize@plt+0xfe93e4fc>\n-\tbvs\tfe97f514 <__cxa_finalize@plt+0xfe97e504>\n-\tbmi\tff1bf7c8 <__cxa_finalize@plt+0xff1be7b8>\n-triangularize():\n+\tbvs\t17f6c4 <__cxa_finalize@plt+0x17e6b4>\n+\tbvs\tfe93f644 <__cxa_finalize@plt+0xfe93e634>\n+\tbvs\tfe97f64c <__cxa_finalize@plt+0xfe97e63c>\n+\tbmi\tff1bf900 <__cxa_finalize@plt+0xff1be8f0>\n ./src/triangularization.c:184 (discriminator 1)\n-\tbmi\tff03f7dc <__cxa_finalize@plt+0xff03e7cc>\n-\tblx\t43f8d0 <__cxa_finalize@plt+0x43e8c0>\n+\tbmi\tff03f914 <__cxa_finalize@plt+0xff03e904>\n+\tblx\t43fa08 <__cxa_finalize@plt+0x43e9f8>\n \tvmov.16\td7[2], sp\n ./src/trigonometry.h:12\n \tvmla.f32\ts12, s15, s15\n-vec3_mag():\n-./src/trigonometry.h:12\n \tvmla.f32\ts12, s12, s14\n \t\t\t@ instruction: 0xeef16aa6\n \tvcmpe.f32\ts7, #0.0\n-triangularize():\n ./src/trigonometry.h:19\n \tvneg.f32\ts7, s0\n-vec3_normalize():\n-./src/trigonometry.h:19\n \tmrc\t10, 5, APSR_nzcv, cr5, cr0, {0}\n \tsvclt\t0x00154a40\n ./src/trigonometry.h:22\n-\tbge\t8ff84c <__cxa_finalize@plt+0x8fe83c>\n+\tbge\t8ff984 <__cxa_finalize@plt+0x8fe974>\n ./src/trigonometry.h:23\n-\tbls\t12ff8f4 <__cxa_finalize@plt+0x12fe8e4>\n-\tbge\tfe8ff754 <__cxa_finalize@plt+0xfe8fe744>\n+\tbls\t12ffa2c <__cxa_finalize@plt+0x12fea1c>\n+\tbge\tfe8ff88c <__cxa_finalize@plt+0xfe8fe87c>\n ./src/trigonometry.h:24\n-\tbge\t12ff7fc <__cxa_finalize@plt+0x12fe7ec>\n+\tbge\t12ff934 <__cxa_finalize@plt+0x12fe924>\n \tcdp\t15, 15, cr11, cr0, cr12, {0}\n \t\t\t@ instruction: 0xeec6aa4b\n \t\t\t@ instruction: 0xeef19aa3\n ./src/trigonometry.h:19\n \tsvclt\t0x0015fa10\n ./src/trigonometry.h:22\n-\tbvs\tfe13f760 <__cxa_finalize@plt+0xfe13e750>\n+\tbvs\tfe13f898 <__cxa_finalize@plt+0xfe13e888>\n ./src/trigonometry.h:20\n-\tbpl\t12ff814 <__cxa_finalize@plt+0x12fe804>\n+\tbpl\t12ff94c <__cxa_finalize@plt+0x12fe93c>\n ./src/trigonometry.h:23\n-\tbmi\t13f86c <__cxa_finalize@plt+0x13e85c>\n+\tbmi\t13f9a4 <__cxa_finalize@plt+0x13e994>\n ./src/trigonometry.h:20\n-\tbmi\t12ff91c <__cxa_finalize@plt+0x12fe90c>\n+\tbmi\t12ffa54 <__cxa_finalize@plt+0x12fea44>\n \tcdp\t15, 11, cr11, cr0, cr12, {0}\n \t\t\t@ instruction: 0xee856a4b\n ./src/trigonometry.h:24\n \tvmul.f32\ts11, s13, s8\n-triangularize():\n ./src/trigonometry.h:89\n \tvmul.f32\ts16, s8, s13\n-vec3_cross_product():\n ./src/trigonometry.h:90\n \tvmul.f32\ts16, s11, s14\n ./src/trigonometry.h:88\n \tvnmls.f32\ts19, s10, s15\n ./src/trigonometry.h:89\n \tvnmls.f32\ts16, s12, s14\n ./src/trigonometry.h:90\n \tvnmls.f32\ts16, s8, s15\n ./src/trigonometry.h:88\n \t\t\t@ instruction: 0xf10b9aa6\n-triangularize():\n ./src/triangularization.c:174 (discriminator 1)\n \tstrmi\tr0, [r2, #2828]!\t@ 0xb0c\n \tsvcge\t0x007bf47f\n ./src/triangularization.c:192\n-\tbleq\t33fec8 <__cxa_finalize@plt+0x33eeb8>\n-\tblx\t2c29be <__cxa_finalize@plt+0x2c19ae>\n+\tbleq\t340000 <__cxa_finalize@plt+0x33eff0>\n+\tblx\t2c2af6 <__cxa_finalize@plt+0x2c1ae6>\n \tldrbmi\tr4, [lr], #-1624\t@ 0xfffff9a8\n-\tstmia\tip, {r0, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}^\n+\tldmda\tr0!, {r0, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}\n ./src/triangularization.c:203\n \tstrmi\tr2, [r7], -r0, lsl #4\n ./src/triangularization.c:193\n \tstrmi\tr4, [r3], -r3, lsl #13\n \trsble\tr2, r1, r0, lsl #16\n ./src/triangularization.c:201\n-\tbvc\t7f4fc <__cxa_finalize@plt+0x7e4ec>\n+\tbvc\t7f634 <__cxa_finalize@plt+0x7e624>\n ./src/triangularization.c:199 (discriminator 1)\n \tldc\t3, cr3, [r5, #48]\t@ 0x30\n \tstrcc\tr6, [ip, #-2560]\t@ 0xfffff600\n-\tbvs\t7f308 <__cxa_finalize@plt+0x7e2f8>\n+\tbvs\t7f440 <__cxa_finalize@plt+0x7e430>\n \tcdp\t2, 2, cr4, cr10, cr14, {5}\n-vec3_dot_product():\n ./src/trigonometry.h:76\n \tvmul.f32\ts15, s16, s15\n \tvmla.f32\ts14, s21, s15\n \tvmla.f32\ts15, s19, s12\n \t\t\t@ instruction: 0xf8437a06\n-triangularize():\n ./src/triangularization.c:203\n \tcdp\t12, 0, cr2, cr9, cr4, {0}\n-vec3_dot_product():\n ./src/trigonometry.h:76\n \tvmla.f32\ts15, s17, s13\n \tvstr\ts14, [r3, #-152]\t@ 0xffffff68\n-triangularize():\n ./src/triangularization.c:201 (discriminator 1)\n \tvstr\ts15, [r3, #-12]\n ./src/triangularization.c:202 (discriminator 1)\n \tmvnle\tr7, r2, lsl #20\n ./src/triangularization.c:207\n-\tbhi\tc3f45c <__cxa_finalize@plt+0xc3e44c>\n+\tbhi\tc3f594 <__cxa_finalize@plt+0xc3e584>\n ./src/triangularization.c:208\n \tstrcs\tr2, [ip, #-1536]\t@ 0xfffffa00\n ./src/triangularization.c:211\n \tstrtmi\tr3, [r1], -r1, lsl #12\n \t\t\t@ instruction: 0xf10b4630\n ./src/triangularization.c:208 (discriminator 1)\n \t\t\t@ instruction: 0xf0000b0c\n ./src/triangularization.c:211\n-\tblx\t1838a2 <__cxa_finalize@plt+0x182892>\n+\tblx\t18376a <__cxa_finalize@plt+0x18275a>\n \tldc\t1, cr7, [fp, #-4]\n ./src/triangularization.c:213\n \tadcmi\tr6, r6, #12288\t@ 0x3000\n-\tbvc\tbf36c <__cxa_finalize@plt+0xbe35c>\n-\tbvc\t3f448 <__cxa_finalize@plt+0x3e438>\n-\tbvs\t7f54c <__cxa_finalize@plt+0x7e53c>\n-\tbvc\t11bf6e8 <__cxa_finalize@plt+0x11be6d8>\n-\tbvc\tfe9bf7ec <__cxa_finalize@plt+0xfe9be7dc>\n-\tbhi\t9ff630 <__cxa_finalize@plt+0x9fe620>\n+\tbvc\tbf4a4 <__cxa_finalize@plt+0xbe494>\n+\tbvc\t3f580 <__cxa_finalize@plt+0x3e570>\n+\tbvs\t7f684 <__cxa_finalize@plt+0x7e674>\n+\tbvc\t11bf820 <__cxa_finalize@plt+0x11be810>\n+\tbvc\tfe9bf924 <__cxa_finalize@plt+0xfe9be914>\n+\tbhi\t9ff768 <__cxa_finalize@plt+0x9fe758>\n ./src/triangularization.c:208 (discriminator 1)\n \tcdp\t1, 11, cr13, cr5, cr6, {7}\n ./src/triangularization.c:215\n-\tb\t13e691c <__cxa_finalize@plt+0x13e590c>\n+\tb\t13e6a54 <__cxa_finalize@plt+0x13e5a44>\n ./src/triangularization.c:218\n \tcdp\t0, 15, cr0, cr1, cr10, {4}\n ./src/triangularization.c:215\n \tsvclt\t0x00acfa10\n-\tbeq\t7ff64 <__cxa_finalize@plt+0x7ef54>\n-\tbeq\t3ff68 <__cxa_finalize@plt+0x3ef58>\n+\tbeq\t8009c <__cxa_finalize@plt+0x7f08c>\n+\tbeq\t400a0 <__cxa_finalize@plt+0x3f090>\n ./src/triangularization.c:218\n-\tstm\tr0, {r0, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}\n+\tsvc\t0x00e4f7fc\n ./src/triangularization.c:224\n \tstrmi\tr2, [r6], -r0, lsl #4\n ./src/triangularization.c:219\n \t\t\t@ instruction: 0xb3201f05\n ./src/triangularization.c:225\n \tsvccs\t0x0004f845\n ./src/triangularization.c:224 (discriminator 3)\n@@ -4401,1098 +4478,930 @@\n \t\t\t@ instruction: 0x4653d1fa\n ./src/triangularization.c:227\n \tldrtmi\tr4, [r1], -r2, lsr #12\n \t\t\t@ instruction: 0xf8cd4638\n \t\t\t@ instruction: 0xf7ff8000\n \t\t\t@ instruction: 0x4638fcbd\n ./src/triangularization.c:228\n-\tsvc\t0x00faf7fc\n+\tsvc\t0x005ef7fc\n ./src/triangularization.c:229\n \tandlt\tr4, r5, r0, lsr r6\n ./src/triangularization.c:232\n-\tblhi\t2bf154 <__cxa_finalize@plt+0x2be144>\n+\tblhi\t2bf28c <__cxa_finalize@plt+0x2be27c>\n \tsvcmi\t0x00f0e8bd\n ./src/triangularization.c:229\n-\tsvclt\t0x00f0f7fc\n+\tsvclt\t0x0054f7fc\n ./src/triangularization.c:195\n-\tblmi\t415ea8 <__cxa_finalize@plt+0x414e98>\n+\tblmi\t415fe0 <__cxa_finalize@plt+0x414fd0>\n \tstcls\t4, cr4, [r3], {120}\t@ 0x78\n ./src/triangularization.c:221\n \ttstcs\tr1, r2, lsr #4\n \tldmdavs\tfp, {r0, r1, r5, r6, r7, fp, ip, lr}\n-\tstmda\tr8, {r0, r2, r3, r4, r5, r6, r7, r8, r9, sl, ip, sp, lr, pc}^\n+\tsvc\t0x00acf7fc\n ./src/triangularization.c:222\n \t\t\t@ instruction: 0xf7fd2001\n-\tstmdami\tfp, {r1, r2, r3, r4, r5, r7, fp, sp, lr, pc}\n+\tstmdami\tfp, {r1, r5, fp, sp, lr, pc}\n ./src/triangularization.c:221\n \tldrbtmi\tr4, [r8], #-2825\t@ 0xfffff4f7\n-\tblmi\t2bde50 <__cxa_finalize@plt+0x2bce40>\n+\tblmi\t2bdf88 <__cxa_finalize@plt+0x2bcf78>\n ./src/triangularization.c:168 (discriminator 1)\n \tstmdbmi\tsl, {r3, r5, r7, r9, sp}\n \tldrbtmi\tr4, [fp], #-2058\t@ 0xfffff7f6\n \ttstcc\tr8, #2030043136\t@ 0x79000000\n \t\t\t@ instruction: 0xf7fc4478\n-\tsvclt\t0x0000efbe\n+\tsvclt\t0x0000ef22\n \tandeq\tr0, r0, r0\n-\tandeq\tip, r1, r2, ror r2\n-\tandeq\tr1, r0, r0, ror r1\n+\tandeq\tip, r1, sl, lsr r1\n+\tmuleq\tr0, r8, r9\n \tandeq\tr0, r0, ip, lsl r1\n-\tandeq\tr1, r0, r6, asr r1\n-\tandeq\tr1, r0, r6, asr #28\n-\tandeq\tr1, r0, r8, ror #8\n-\tandeq\tr1, r0, ip, ror r4\n-get_bounding_box_center():\n-./src/trigonometry.c:4\n-\tstmdbcs\tr0, {r3, r7, ip, sp, pc}\n-./src/trigonometry.c:8\n-\tandcs\tsp, ip, #5248\t@ 0x1480\n-./src/trigonometry.c:10\n-\tbpl\t3f60c <__cxa_finalize@plt+0x3e5fc>\n-\tbvs\t7f510 <__cxa_finalize@plt+0x7e500>\n-\tldc\t6, cr4, [r0, #12]\n-\tblx\t8a6e2 <__cxa_finalize@plt+0x896d2>\n-./src/trigonometry.c:14 (discriminator 1)\n-\tcdp\t1, 11, cr0, cr0, cr1, {0}\n-./src/trigonometry.c:10\n-\tvmov.f32\ts1, s11\n-\tvmov.f32\ts0, s12\n-\tvldr\ts11, [r3, #260]\t@ 0x104\n-./src/trigonometry.c:16\n-\tmovwcc\tr6, #51712\t@ 0xca00\n-\tbvc\tbf33c <__cxa_finalize@plt+0xbe32c>\n-\tbvc\t7f440 <__cxa_finalize@plt+0x7e430>\n-./src/trigonometry.c:18\n-\tbvs\tff97fac8 <__cxa_finalize@plt+0xff97eab8>\n-\tblx\t43fac0 <__cxa_finalize@plt+0x43eab0>\n-\tbvc\tff1bf9d0 <__cxa_finalize@plt+0xff1be9c0>\n-\tcdp\t15, 15, cr11, cr0, cr8, {2}\n-\tvneg.f32\ts11, s13\n-./src/trigonometry.c:20\n-\tvmrs\tpc, \n-\tsvclt\t0x00487ac1\n-\tbvs\t11ff9d4 <__cxa_finalize@plt+0x11fe9c4>\n-./src/trigonometry.c:22\n-\tblx\t43fadc <__cxa_finalize@plt+0x43eacc>\n-\tbvs\tff03faec <__cxa_finalize@plt+0xff03eadc>\n-\tcdp\t15, 11, cr11, cr0, cr8, {2}\n-\tvneg.f32\ts3, s15\n-./src/trigonometry.c:25\n-\tmrc\t10, 5, APSR_nzcv, cr4, cr0, {0}\n-\tsvclt\t0x00c87ae0\n-\tbeq\t19bf9f0 <__cxa_finalize@plt+0x19be9e0>\n-./src/trigonometry.c:27\n-\tblx\t43faf8 <__cxa_finalize@plt+0x43eae8>\n-\tbvc\tff17fb08 <__cxa_finalize@plt+0xff17eaf8>\n-\tcdp\t15, 15, cr11, cr0, cr8, {6}\n-\tvneg.f32\ts1, s14\n-./src/trigonometry.c:29\n-\tsvclt\t0x00c8fa10\n-\tbpl\t19ffa08 <__cxa_finalize@plt+0x19fe9f8>\n-./src/trigonometry.c:14 (discriminator 1)\n-\tbicle\tr4, ip, fp, lsl #5\n-./src/trigonometry.c:34\n-\tbeq\t97f810 <__cxa_finalize@plt+0x97e800>\n-./src/trigonometry.c:35\n-\tbeq\tfe1bf914 <__cxa_finalize@plt+0xfe1be904>\n-./src/trigonometry.c:36\n-\tbne\t17f81c <__cxa_finalize@plt+0x17e80c>\n-./src/trigonometry.c:34\n-\tbvc\t3fb34 <__cxa_finalize@plt+0x3eb24>\n-\tbeq\t9ff7e0 <__cxa_finalize@plt+0x9fe7d0>\n-./src/trigonometry.c:35\n-\tbeq\tfe9ff8e4 <__cxa_finalize@plt+0xfe9fe8d4>\n-./src/trigonometry.c:36\n-\tbne\t9ff7ec <__cxa_finalize@plt+0x9fe7dc>\n-./src/trigonometry.c:39\n-\tldrbmi\tfp, [r0, -r8]!\n-\tbne\tff5ec <__cxa_finalize@plt+0xfe5dc>\n-\tbeq\t107fb34 <__cxa_finalize@plt+0x107eb24>\n-\tbeq\t107fa38 <__cxa_finalize@plt+0x107ea28>\n-\tldrbmi\tfp, [r0, -r8]!\n-\tandeq\tr0, r0, r0\n-get_max_dist():\n-./src/trigonometry.c:42\n-\tstmdbcs\tr0, {r2, r7, ip, sp, pc}\n-./src/trigonometry.c:45 (discriminator 1)\n-\tmovwcs\tsp, #52521\t@ 0xcd29\n-./src/trigonometry.c:43\n-\tbvs\t63f608 <__cxa_finalize@plt+0x63e5f8>\n-\ttstpeq\tr1, r3, lsl #22\t@ p-variant is OBSOLETE\n-./src/trigonometry.c:48\n-\tbvc\t7f6d4 <__cxa_finalize@plt+0x7e6c4>\n-./src/trigonometry.c:45 (discriminator 1)\n-\tldcl\t0, cr3, [r0, #-48]\t@ 0xffffffd0\n-./src/trigonometry.c:48\n-\tvldr\ts12, [r0, #-12]\n-\tvadd.f32\ts15, s14, s2\n-\tvsub.f32\ts15, s13, s1\n-\tvsub.f32\ts12, s15, s0\n-\tvnmul.f32\ts15, s14, s2\n-\tvmla.f32\ts15, s13, s15\n-\tvmla.f32\ts15, s15, s13\n-\tvmov.f32\ts15, #71\t@ 0x3e380000 0.1796875\n-./src/trigonometry.c:50\n-\tvsqrt.f32\ts15, s12\n-\tsvclt\t0x00c8fa10\n-\tbvs\t19ffa84 <__cxa_finalize@plt+0x19fea74>\n-./src/trigonometry.c:45 (discriminator 1)\n-\tmvnle\tr4, r1, lsl #5\n-./src/trigonometry.c:54\n-\tbvs\t103faa0 <__cxa_finalize@plt+0x103ea90>\n-\tblx\t43fb94 <__cxa_finalize@plt+0x43eb84>\n-\tcdp\t4, 11, cr13, cr1, cr7, {0}\n-\tandlt\tr0, r4, r6, asr #21\n-./src/trigonometry.c:55\n-\tldc\t7, cr4, [pc, #448]\t@ 419c <__cxa_finalize@plt+0x318c>\n-./src/trigonometry.c:45 (discriminator 1)\n-\tandlt\tr0, r4, r4, lsl #20\n-./src/trigonometry.c:55\n-\tmrc\t7, 5, r4, cr0, cr0, {3}\n-./src/trigonometry.c:54\n-\tandlt\tr0, r4, r6, asr #20\n-\tmrclt\t7, 6, APSR_nzcv, cr2, cr12, {7}\n+\tandeq\tr1, r0, lr, ror r9\n+\tstrdeq\tr1, [r0], -lr\n+\tandeq\tr1, r0, r0, asr ip\n+\tandeq\tr1, r0, r4, ror #24\n+triangle_normal():\n+./src/surface.c:25\n+\tbvs\t3f73c <__cxa_finalize@plt+0x3e72c>\n+./src/surface.c:22\n+\tldcl\t0, cr11, [r0, #544]\t@ 0x220\n+./src/surface.c:27\n+\tvldr\ts9, [r0, #8]\n+./src/surface.c:25\n+\tvldr\ts10, [r0, #12]\n+./src/surface.c:31\n+\tvldr\ts10, [r0, #32]\n+./src/surface.c:26\n+\tvldr\ts12, [r0, #4]\n+./src/surface.c:27\n+\tvadd.f32\ts9, s10, s10\n+./src/surface.c:25\n+\tvldr\ts10, [r0, #920]\t@ 0x398\n+./src/surface.c:30\n+\tvadd.f32\ts14, s10, s14\n+./src/surface.c:31\n+\tvldr\ts11, [r0, #400]\t@ 0x190\n+./src/surface.c:29\n+\tvadd.f32\ts14, s8, s12\n+./src/surface.c:27\n+\tvldr\ts9, [r0, #400]\t@ 0x190\n+./src/surface.c:26\n+\tvadd.f32\ts8, s14, s8\n+./src/surface.c:30\n+\tvsub.f32\ts15, s14, s12\n+./src/surface.c:29\n+\tvnmul.f32\ts15, s11, s13\n+./src/trigonometry.h:89\n+\tvadd.f32\ts13, s9, s10\n+./src/surface.c:26\n+\tvnmul.f32\ts8, s9, s12\n+vec3_cross_product():\n+./src/trigonometry.h:88\n+\tvnmls.f32\ts13, s8, s14\n+./src/trigonometry.h:89\n+\tvmul.f32\ts13, s8, s15\n+./src/trigonometry.h:90\n+\tvnmls.f32\ts14, s9, s15\n+./src/trigonometry.h:88\n+\tvnmls.f32\ts13, s11, s10\n+./src/trigonometry.h:90\n+\tvmul.f32\ts14, s13, s14\n+triangle_normal():\n+./src/trigonometry.h:12\n+\tvmla.f32\ts14, s13, s13\n+vec3_mag():\n+./src/trigonometry.h:12\n+\tvmla.f32\ts14, s14, s12\n+\t\t\t@ instruction: 0xeef17aa7\n+\tvcmpe.f32\ts11, #0.0\n+triangle_normal():\n+./src/trigonometry.h:19\n+\tvneg.f32\ts11, s0\n+vec3_normalize():\n+./src/trigonometry.h:19\n+\tsvclt\t0x0017fa10\n+./src/trigonometry.h:22\n+\tbeq\t97fa84 <__cxa_finalize@plt+0x97ea74>\n+./src/trigonometry.h:20\n+\tbne\t1bf6ec <__cxa_finalize@plt+0x1be6dc>\n+./src/trigonometry.h:23\n+\tbeq\tfe97fb8c <__cxa_finalize@plt+0xfe97eb7c>\n+./src/trigonometry.h:24\n+\tbne\tfe97fa94 <__cxa_finalize@plt+0xfe97ea84>\n+./src/trigonometry.h:20\n+\tcdp\t15, 15, cr11, cr0, cr4, {0}\n+\tvmov.f32\ts0, s2\n+\tandlt\tr0, r8, r1, asr #20\n+triangle_normal():\n+./src/surface.c:36\n+\tsvclt\t0x00004770\n \tandeq\tr0, r0, r0\n-create_surface():\n-./src/viewer.c:476\n+surface_init():\n+./src/surface.c:64\n \tmvnsmi\tlr, sp, lsr #18\n \tstcpl\t4, cr15, [r0], {79}\t@ 0x4f\n-\tblhi\tbf4b0 <__cxa_finalize@plt+0xbe4a0>\n+\tblhi\tbf54c <__cxa_finalize@plt+0xbe53c>\n \t\t\t@ instruction: 0x0c0cebad\n \tsvceq\t0x00e0f8cc\n-model_xz_rad():\n-./src/viewer.c:463 (discriminator 1)\n-\tcdp\t8, 15, cr6, cr0, cr4, {0}\n-create_surface():\n-./src/viewer.c:476\n-\t\t\t@ instruction: 0xf8df8a40\n-\t\t\t@ instruction: 0x460de0b8\n-\t\t\t@ instruction: 0x461f4616\n-\tstccs\t4, cr4, [r0], {254}\t@ 0xfe\n-model_xz_rad():\n-./src/viewer.c:463 (discriminator 1)\n-\tstmvs\tr0, {r1, r2, r3, r6, ip, lr, pc}\n-\tldc\t3, cr2, [pc, #48]\t@ 4050 <__cxa_finalize@plt+0x3040>\n-./src/viewer.c:462\n-\tblx\te68c6 <__cxa_finalize@plt+0xe58b6>\n-\tldcl\t12, cr0, [r0, #16]\n-./src/viewer.c:465\n-\tandcc\tr7, ip, r2, lsl #20\n-\tbvc\tff470 <__cxa_finalize@plt+0xfe460>\n-./src/viewer.c:467\n-\tbvc\tfe9ff9d0 <__cxa_finalize@plt+0xfe9fe9c0>\n-\tbvc\t1ff954 <__cxa_finalize@plt+0x1fe944>\n-\tbvc\tff9ffb00 <__cxa_finalize@plt+0xff9feaf0>\n-./src/viewer.c:468\n-\tbvc\tff23fb10 <__cxa_finalize@plt+0xff23eb00>\n-\tblx\t43fc08 <__cxa_finalize@plt+0x43ebf8>\n-\tcdp\t15, 11, cr11, cr0, cr8, {6}\n-\tstrmi\tr8, [r4, #2631]\t@ 0xa47\n-./src/viewer.c:463 (discriminator 1)\n-\tblmi\t7b87fc <__cxa_finalize@plt+0x7b77ec>\n-create_surface():\n-./src/viewer.c:486\n-\tandhi\tpc, r3, lr, asr r8\t@ \n-\tldrdeq\tpc, [r0], -r8\n-\tsvc\t0x00b2f7fc\n-\t\t\t@ instruction: 0xf8d84604\n-./src/viewer.c:486 (discriminator 1)\n-\tcdpcs\t0, 0, cr0, cr0, cr0, {0}\n-./src/viewer.c:486\n-\tstrtmi\tfp, [r6], -r8, lsl #30\n-./src/viewer.c:486 (discriminator 1)\n-\tsvc\t0x009ef7fc\n-\tsvclt\t0x00082d00\n-\tldmiblt\tr7, {r0, r2, r9, sl, lr}\n-./src/viewer.c:500\n-\tbvs\tfe43f894 <__cxa_finalize@plt+0xfe43e884>\n-\tbpl\t43f898 <__cxa_finalize@plt+0x43e888>\n-\tbvc\tff9ffc60 <__cxa_finalize@plt+0xff9fec50>\n-\tbvc\tff1ffb64 <__cxa_finalize@plt+0xff1feb54>\n-\tbvc\tfea3fa24 <__cxa_finalize@plt+0xfea3ea14>\n-\tbvs\t9ffba8 <__cxa_finalize@plt+0x9feb98>\n-./src/viewer.c:502\n-\tbvs\tff23fc60 <__cxa_finalize@plt+0xff23ec50>\n-\tblx\t43fc58 <__cxa_finalize@plt+0x43ec48>\n-\tvmov.f64\td13, #13\t@ 0x40680000 3.625\n-./src/viewer.c:504\n-\tvrintx.f32\ts17, s13\n-./src/viewer.c:505\n-\tvmov.f32\ts0, #0\t@ 0x40000000 2.0\n-./src/viewer.c:514\n-\tldrtmi\tr0, [r1], -r8, asr #20\n-./src/viewer.c:515\n-\tblhi\tbf39c <__cxa_finalize@plt+0xbe38c>\n-./src/viewer.c:514\n-\tpop\t{r3, r5, r9, sl, lr}\n-./src/viewer.c:515\n-\t\t\t@ instruction: 0xf7fd41f0\n-./src/viewer.c:514\n-\tmcr\t15, 6, fp, cr8, cr5, {3}\n-./src/viewer.c:510\n-\tldrb\tr0, [r2, r6, lsr #20]!\n-model_xz_rad():\n-./src/viewer.c:462\n-\tbhi\t7f738 <__cxa_finalize@plt+0x7e728>\n-\tsvclt\t0x0000e7c7\n-\tandeq\tr0, r0, r0\n-\tandeq\tfp, r1, r0, asr #29\n-\tandeq\tr0, r0, r0, lsl r1\n-output_usage():\n-./src/viewer.c:26\n+\tstrmi\tr4, [r7], -r9, lsr #28\n+./src/surface.c:67\n+\tmrc\t0, 7, r2, cr0, cr12, {0}\n+./src/surface.c:64\n+\tvmov.f32\ts16, s0\n+\tstrmi\tr8, [ip], -r0, ror #20\n+\t\t\t@ instruction: 0xf7fc447e\n+./src/surface.c:67\n+\t\t\t@ instruction: 0xb3b8ef3e\n+./src/surface.c:78\n+\tbmi\t43f8d8 <__cxa_finalize@plt+0x43e8c8>\n+./src/surface.c:77\n+\tbvc\tfe43f8dc <__cxa_finalize@plt+0xfe43e8cc>\n+./src/surface.c:80\n+\t\t\t@ instruction: 0xf807fb04\n+\tcdp\t2, 15, cr2, cr8, cr12, {0}\n+./src/surface.c:78\n+\tvcvt.f32.u32\ts13, s14\n+./src/surface.c:77\n+\tstrmi\tr7, [r5], -r7, ror #20\n+./src/surface.c:74\n+\tstrmi\tlr, [r0, -r0, asr #19]\n+./src/surface.c:75\n+\tbhi\tbf7d8 <__cxa_finalize@plt+0xbe7c8>\n+./src/surface.c:80\n+\t\t\t@ instruction: 0xf408fb02\n+./src/surface.c:76\n+\tbhi\tff6e0 <__cxa_finalize@plt+0xfe6d0>\n+./src/surface.c:77\n+\tbvc\tfe9ffb04 <__cxa_finalize@plt+0xfe9feaf4>\n+./src/surface.c:78\n+\tbvc\t9bfc08 <__cxa_finalize@plt+0x9bebf8>\n+./src/surface.c:80\n+\tstc\t6, cr4, [r5, #128]\t@ 0x80\n+./src/surface.c:77\n+\tvstr\ts15, [r5, #16]\n+./src/surface.c:78\n+\t\t\t@ instruction: 0xf7fc7a05\n+./src/surface.c:80\n+\t\t\t@ instruction: 0x4603ef1e\n+./src/surface.c:80 (discriminator 1)\n+\tmovwlt\tr6, #33192\t@ 0x81a8\n+surface_clear():\n+./src/surface.c:95 (discriminator 1)\n+\t\t\t@ instruction: 0xf04f1902\n+./src/surface.c:97\n+\tstrdcs\tr4, [r0], -pc\t@ \n+./src/surface.c:99\n+\tmvnscc\tpc, pc, asr #32\n+./src/surface.c:95 (discriminator 1)\n+\tsvceq\t0x0000f1b8\n+\ttstvc\tr8, r7\n+\t\t\t@ instruction: 0xf843330c\n+./src/surface.c:99\n+\t\t\t@ instruction: 0xf8431c04\n+./src/surface.c:97\n+\taddsmi\tip, r3, #12, 24\t@ 0xc00\n+./src/surface.c:95 (discriminator 1)\n+\tldc\t1, cr13, [sp], #988\t@ 0x3dc\n+surface_init():\n+./src/surface.c:88\n+\tstrtmi\tr8, [r8], -r2, lsl #22\n+\tldrhhi\tlr, [r0, #141]!\t@ 0x8d\n+./src/surface.c:69\n+\tblmi\t25614c <__cxa_finalize@plt+0x25513c>\n+\tldmpl\tr3!, {r3, r4, r5, r6, sl, lr}^\n+./src/surface.c:82\n+\ttstcs\tr1, r2, lsr #4\n+\t\t\t@ instruction: 0xf7fc681b\n+\tandcs\tlr, r1, sl, ror #29\n+./src/surface.c:83\n+\tsvc\t0x005ef7fc\n+./src/surface.c:82\n+\tblmi\td6154 <__cxa_finalize@plt+0xd5144>\n+\t\t\t@ instruction: 0xe7f24478\n+\tandeq\tfp, r1, r4, lsr #28\n+\tandeq\tr1, r0, r0, lsl r8\n+\tandeq\tr0, r0, ip, lsl r1\n+\tstrdeq\tr1, [r0], -r8\n+surface_clear():\n+./src/surface.c:91\n \tvst3.8\t{d27,d29,d31}, [pc], r8\n-\tbl\tfeb5b2d4 <__cxa_finalize@plt+0xfeb5a2c4>\n+\tbl\tfeb5b360 <__cxa_finalize@plt+0xfeb5a350>\n \t\t\t@ instruction: 0xf8cc0c0c\n-\t\t\t@ instruction: 0x46010ff8\n-./src/viewer.c:28\n-\tldrbtmi\tr4, [r8], #-2116\t@ 0xfffff7bc\n-\tmrc\t7, 7, APSR_nzcv, cr6, cr12, {7}\n-./src/viewer.c:29\n-\tstmdbmi\tr4, {r0, r1, r6, r9, fp, lr}^\n-\tldrbtmi\tr4, [sl], #-2116\t@ 0xfffff7bc\n-\tldrbtmi\tr4, [r8], #-1145\t@ 0xfffffb87\n-\tmcr\t7, 7, pc, cr14, cr12, {7}\t@ \n-./src/viewer.c:30\n-\t\t\t@ instruction: 0xf7fc200a\n-\tstmdami\tr1, {r1, r2, r5, r6, r9, sl, fp, sp, lr, pc}^\n-./src/viewer.c:31\n-\t\t\t@ instruction: 0xf7fc4478\n-\tstmdami\tr0, {r1, r2, r4, r5, r8, r9, sl, fp, sp, lr, pc}^\n-./src/viewer.c:32\n-\t\t\t@ instruction: 0xf7fc4478\n-\tldmdami\tpc!, {r1, r4, r5, r8, r9, sl, fp, sp, lr, pc}\t@ \n-./src/viewer.c:33\n-\t\t\t@ instruction: 0xf7fc4478\n-\tldmdami\tlr!, {r1, r2, r3, r5, r8, r9, sl, fp, sp, lr, pc}\n-./src/viewer.c:34\n-\t\t\t@ instruction: 0xf7fc4478\n-\tldmdami\tsp!, {r1, r3, r5, r8, r9, sl, fp, sp, lr, pc}\n-./src/viewer.c:35\n-\t\t\t@ instruction: 0xf7fc4478\n-\tldmdami\tip!, {r1, r2, r5, r8, r9, sl, fp, sp, lr, pc}\n-./src/viewer.c:36\n-\t\t\t@ instruction: 0xf7fc4478\n-\tldmdami\tfp!, {r1, r5, r8, r9, sl, fp, sp, lr, pc}\n-./src/viewer.c:37\n-\t\t\t@ instruction: 0xf7fc4478\n-\tldmdami\tsl!, {r1, r2, r3, r4, r8, r9, sl, fp, sp, lr, pc}\n-./src/viewer.c:38\n-\t\t\t@ instruction: 0xf7fc4478\n-\tldmdami\tr9!, {r1, r3, r4, r8, r9, sl, fp, sp, lr, pc}\n-./src/viewer.c:39\n-\t\t\t@ instruction: 0xf7fc4478\n-\tldmdami\tr8!, {r1, r2, r4, r8, r9, sl, fp, sp, lr, pc}\n-./src/viewer.c:40\n-\t\t\t@ instruction: 0xf7fc4478\n-\tldmdami\tr7!, {r1, r4, r8, r9, sl, fp, sp, lr, pc}\n-./src/viewer.c:41\n-\t\t\t@ instruction: 0xf7fc4478\n-\tldmdami\tr6!, {r1, r2, r3, r8, r9, sl, fp, sp, lr, pc}\n-./src/viewer.c:42\n-\t\t\t@ instruction: 0xf7fc4478\n-\tldmdami\tr5!, {r1, r3, r8, r9, sl, fp, sp, lr, pc}\n-./src/viewer.c:43\n-\t\t\t@ instruction: 0xf7fc4478\n-\tldmdami\tr4!, {r1, r2, r8, r9, sl, fp, sp, lr, pc}\n-./src/viewer.c:44\n-\t\t\t@ instruction: 0xf7fc4478\n-\tldmdami\tr3!, {r1, r8, r9, sl, fp, sp, lr, pc}\n-./src/viewer.c:45\n-\t\t\t@ instruction: 0xf7fc4478\n-\tldmdami\tr2!, {r1, r2, r3, r4, r5, r6, r7, r9, sl, fp, sp, lr, pc}\n-./src/viewer.c:46\n-\t\t\t@ instruction: 0xf7fc4478\n-\tldmdami\tr1!, {r1, r3, r4, r5, r6, r7, r9, sl, fp, sp, lr, pc}\n-./src/viewer.c:47\n-\t\t\t@ instruction: 0xf7fc4478\n-\tstrdcs\tlr, [sl], -r6\n-./src/viewer.c:48\n-\tmrc\t7, 0, APSR_nzcv, cr14, cr12, {7}\n-./src/viewer.c:49\n-\tldrbtmi\tr4, [r8], #-2094\t@ 0xfffff7d2\n-\tmcr\t7, 7, pc, cr14, cr12, {7}\t@ \n-./src/viewer.c:50\n-\tldrbtmi\tr4, [r8], #-2093\t@ 0xfffff7d3\n-\tmcr\t7, 7, pc, cr10, cr12, {7}\t@ \n-./src/viewer.c:51\n-\t\t\t@ instruction: 0xf7fc200a\n-\tstmdami\tfp!, {r2, r4, r9, sl, fp, sp, lr, pc}\n-./src/viewer.c:52\n-\t\t\t@ instruction: 0xf7fc4478\n-\tstmdami\tsl!, {r2, r5, r6, r7, r9, sl, fp, sp, lr, pc}\n-./src/viewer.c:53\n-\t\t\t@ instruction: 0xf7fc4478\n-\tandcs\tlr, sl, r0, ror #29\n-./src/viewer.c:54\n-\tmcr\t7, 0, pc, cr8, cr12, {7}\t@ \n-./src/viewer.c:55\n-\tldrbtmi\tr4, [r8], #-2087\t@ 0xfffff7d9\n-\tmrc\t7, 6, APSR_nzcv, cr8, cr12, {7}\n-./src/viewer.c:56\n-\tldrbtmi\tr4, [r8], #-2086\t@ 0xfffff7da\n-\tmrc\t7, 6, APSR_nzcv, cr4, cr12, {7}\n-./src/viewer.c:57\n-\tldrbtmi\tr4, [r8], #-2085\t@ 0xfffff7db\n-\tmrc\t7, 6, APSR_nzcv, cr0, cr12, {7}\n-./src/viewer.c:58\n-\tldrbtmi\tr4, [r8], #-2084\t@ 0xfffff7dc\n-\tmcr\t7, 6, pc, cr12, cr12, {7}\t@ \n-./src/viewer.c:59\n-\t\t\t@ instruction: 0xf7fc200a\n-\tstmdami\tr2!, {r1, r2, r4, r5, r6, r7, r8, sl, fp, sp, lr, pc}\n-./src/viewer.c:60\n+\t\t\t@ instruction: 0xb1b80ff8\n+./src/surface.c:93\n+\tmvnslt\tr6, r3, lsl #19\n+./src/surface.c:95 (discriminator 1)\n+\tldrdcs\tlr, [r0, -r0]\n+\tvqdmulh.s\td15, d2, d1\n+\ttstcs\tip, sl, ror r1\n+./src/surface.c:97\n+\tldclmi\t0, cr15, [pc], #316\t@ 42b8 <__cxa_finalize@plt+0x32a8>\n+./src/surface.c:98\n+\tblx\t4c202 <__cxa_finalize@plt+0x4b1f2>\n+\t\t\t@ instruction: 0xf04f3202\n+./src/surface.c:99\n+\t\t\t@ instruction: 0x711831ff\n+./src/surface.c:95 (discriminator 1)\n+\t\t\t@ instruction: 0xf843330c\n+./src/surface.c:99\n+\t\t\t@ instruction: 0xf8431c04\n+./src/surface.c:97\n+\taddsmi\tip, r3, #12, 24\t@ 0xc00\n+./src/surface.c:95 (discriminator 1)\n+\tstclt\t1, cr13, [r8, #-988]\t@ 0xfffffc24\n+./src/surface.c:92 (discriminator 1)\n+\tsubscs\tr4, ip, #5120\t@ 0x1400\n+\tstmdami\tr6, {r0, r2, r8, fp, lr}\n+\tldrbtmi\tr4, [r9], #-1147\t@ 0xfffffb85\n \t\t\t@ instruction: 0xf7fc4478\n-\tandcs\tlr, sl, r6, asr #29\n-./src/viewer.c:61\n-\tstcl\t7, cr15, [lr, #1008]!\t@ 0x3f0\n-./src/viewer.c:63\n-\t\t\t@ instruction: 0xf7fc2001\n-\tsvclt\t0x0000ef08\n-\tandeq\tr1, r0, lr, asr r2\n-\tandeq\tr1, r0, r6, ror r2\n-\tandeq\tr1, r0, r4, lsr #5\n-\t\t\t@ instruction: 0x000012b2\n-\t\t\t@ instruction: 0x000012b0\n+\t\t\t@ instruction: 0xf7fcee38\n+\tsvclt\t0x0000ff3b\n+\tandeq\tr1, r0, r0, asr fp\n+\t\t\t@ instruction: 0x00001aba\n \tldrdeq\tr1, [r0], -r8\n-\tandeq\tr1, r0, r0, lsl #6\n-\tandeq\tr1, r0, r8, lsr r3\n-\tandeq\tr1, r0, r8, asr r3\n-\tmuleq\tr0, ip, r3\n-\t\t\t@ instruction: 0x000013b4\n-\tstrdeq\tr1, [r0], -r8\n-\tandeq\tr1, r0, r4, lsl r4\n-\tandeq\tr1, r0, ip, asr r4\n-\tandeq\tr1, r0, r4, lsl #9\n-\tandeq\tr1, r0, r0, asr #9\n-\tstrdeq\tr1, [r0], -r4\n-\tandeq\tr1, r0, r8, lsl r5\n-\tandeq\tr1, r0, r0, asr #10\n-\tandeq\tr1, r0, r0, asr r5\n-\tandeq\tr1, r0, ip, ror #10\n-\tmuleq\tr0, r6, r5\n-\t\t\t@ instruction: 0x000015ba\n-\tstrdeq\tr1, [r0], -r4\n-\tandeq\tr1, r0, r8, lsr r6\n-\tandeq\tr1, r0, r2, ror #12\n-\tandeq\tr1, r0, sl, lsl #13\n-\t\t\t@ instruction: 0x000016b6\n-\tandeq\tr1, r0, r2, ror #13\n-\tandeq\tr1, r0, r4, lsl #14\n-surface_draw_model():\n-./src/viewer.c:404\n-\tsvcmi\t0x00f0e92d\n-\tstcpl\t4, cr15, [r0], {79}\t@ 0x4f\n-\tblhi\t43f728 <__cxa_finalize@plt+0x43e718>\n-\t\t\t@ instruction: 0x0c0cebad\n-\tcdpeq\t8, 5, cr15, cr8, cr12, {6}\n-\t\t\t@ instruction: 0x4615b0d1\n-\tbhi\t183fd44 <__cxa_finalize@plt+0x183ed34>\n-\tstrmi\tr4, [r2], r9, lsl #13\n-\tandsls\tsl, r1, #425984\t@ 0x68000\n-\t\t\t@ instruction: 0xf89da81b\n-\tcdp\t1, 11, cr4, cr0, cr8, {5}\n-\tbmi\te6ab9c <__cxa_finalize@plt+0xe69b8c>\n-\t\t\t@ instruction: 0x461c9413\n-\tldrbtmi\tr9, [sl], #-786\t@ 0xfffffcee\n-\tldmpl\tr3, {r0, r1, r2, r4, r5, r8, r9, fp, lr}^\n-\tmovtls\tr6, #63515\t@ 0xf81b\n+surface_free():\n+./src/surface.c:104\n+\tvst3.8\t{d27,d29,d31}, [pc :64], r0\n+\tbl\tfeb5b3c4 <__cxa_finalize@plt+0xfeb5a3b4>\n+\t\t\t@ instruction: 0xf8cc0c0c\n+\t\t\t@ instruction: 0x46040ff8\n+./src/surface.c:105\n+\t\t\t@ instruction: 0xf7fc6980\n+\t\t\t@ instruction: 0x4620ee3e\n+./src/surface.c:107\n+\t\t\t@ instruction: 0x4010e8bd\n+./src/surface.c:106\n+\tmrclt\t7, 1, APSR_nzcv, cr6, cr12, {7}\n+surface_draw_triangle():\n+./src/surface.c:155\n+\tvst4.32\t{d27-d30}, [pc], r4\n+\tpush\t{r7, sl, fp, ip, lr}\n+\tvstr\tFPSCR_nzcvqc, [sp, #-448]!\t@ 0xfffffe40\n+\tbl\tfeb66e2c <__cxa_finalize@plt+0xfeb65e1c>\n+\t\t\t@ instruction: 0xf8cc0c0c\n+\tadclt\tr0, r5, r8, lsl #30\n+\tldcl\t12, cr10, [sp, #252]\t@ 0xfc\n+\tstm\tr4, {r1, r6, r9, fp, ip, sp, lr}\n+\tldcl\t0, cr0, [sp, #56]\t@ 0x38\n+\tvldr\ts12, [sp, #268]\t@ 0x10c\n+triangle_orientation():\n+./src/surface.c:40\n+\tvldr\ts12, [sp, #280]\t@ 0x118\n+./src/surface.c:41\n+\tvldr\ts14, [sp, #276]\t@ 0x114\n+./src/surface.c:40\n+\tvldr\ts11, [sp, #252]\t@ 0xfc\n+./src/surface.c:41\n+\tvsub.f32\ts10, s12, s0\n+./src/surface.c:40\n+\tvsub.f32\ts12, s14, s13\n+./src/surface.c:41\n+\t\t\t@ instruction: 0xf8df7a67\n+surface_draw_triangle():\n+./src/surface.c:155\n+\tmrc\t4, 3, r1, cr7, cr4, {3}\n+triangle_orientation():\n+./src/surface.c:40\n+\t\t\t@ instruction: 0xf8df7ac5\n+surface_draw_triangle():\n+./src/surface.c:155\n+\tmrc\t4, 3, r2, cr6, cr0, {3}\n+triangle_orientation():\n+./src/surface.c:41\n+\tldrbtmi\tr6, [r9], #-2789\t@ 0xfffff51b\n+surface_draw_triangle():\n+./src/surface.c:155\n+\tmsrcc\tCPSR_s, sp\t@ \n+\tmsrvs\tCPSR_f, sp\t@ \n+triangle_orientation():\n+./src/surface.c:40\n+\tbvc\tfe1bfbd4 <__cxa_finalize@plt+0xfe1bebc4>\n+surface_draw_triangle():\n+./src/surface.c:155\n+\tcdp\t8, 2, cr5, cr7, cr10, {4}\n+triangle_orientation():\n+./src/surface.c:41\n+\t\t\t@ instruction: 0xf0837a26\n+surface_draw_triangle():\n+./src/surface.c:156 (discriminator 1)\n+\tldmdavs\tr2, {r0, r8, r9}\n+./src/surface.c:155\n+\t\t\t@ instruction: 0xf04f9223\n+\tsvcls\t0x004b0200\n+triangle_orientation():\n+./src/surface.c:41\n+\tbvc\tff1ffe20 <__cxa_finalize@plt+0xff1fee10>\n+\tblx\t43fe18 <__cxa_finalize@plt+0x43ee08>\n+surface_draw_triangle():\n+./src/surface.c:156 (discriminator 1)\n+\tandcs\tfp, r1, #76, 30\t@ 0x130\n+\taddsmi\tr2, sl, #0, 4\n+\t\t\t@ instruction: 0xf8dfd013\n+./src/surface.c:155\n+\t\t\t@ instruction: 0xf8df2438\n+./src/surface.c:204\n+\tldrbtmi\tr3, [sl], #-1072\t@ 0xfffffbd0\n+\tldmdavs\tsl, {r0, r1, r4, r6, r7, fp, ip, lr}\n+\tsubsmi\tr9, sl, r3, lsr #22\n \tmovweq\tpc, #79\t@ 0x4f\t@ \n-\tmcr\t7, 1, pc, cr2, cr12, {7}\t@ \n-./src/viewer.c:405\n-\tldc\t6, cr4, [sp, #128]\t@ 0x80\n-\t\t\t@ instruction: 0xf7fcba1a\n-\tcdp\t13, 11, cr14, cr0, cr2, {7}\n-./src/viewer.c:407\n-\tstrmi\tr0, [r3], r8, asr #20\n-./src/viewer.c:405\n-\t\t\t@ instruction: 0xf7fc9014\n-./src/viewer.c:407\n-\tcdp\t13, 11, cr14, cr0, cr2, {7}\n-\tvneg.f32\ts20, s0\n-./src/viewer.c:408\n-\tvldr\ts1, [sp, #288]\t@ 0x120\n-\t\t\t@ instruction: 0xf7fcba1b\n-\tstccs\t14, cr14, [r0, #-376]\t@ 0xfffffe88\n-./src/viewer.c:413\n-\tbvc\t97fa58 <__cxa_finalize@plt+0x97ea48>\n-\tbvs\t3febc <__cxa_finalize@plt+0x3eeac>\n-\tbpl\t93f960 <__cxa_finalize@plt+0x93e950>\n-\tbpl\t23fec0 <__cxa_finalize@plt+0x23eeb0>\n-\tbvc\t8ff968 <__cxa_finalize@plt+0x8fe958>\n-\tbvs\t3fde8 <__cxa_finalize@plt+0x3edd8>\n-\tmrc\t15, 7, fp, cr0, cr8, {0}\n-\t\t\t@ instruction: 0xf8d96a65\n-./src/viewer.c:416 (discriminator 1)\n-\tsvclt\t0x0018300c\n-./src/viewer.c:413\n-\tbvc\t117fec0 <__cxa_finalize@plt+0x117eeb0>\n-\tmrc\t15, 5, fp, cr0, cr8, {0}\n-\tvcvt.u16.f32\ts14, s14, #4\n-vec3_normalize():\n-./src/trigonometry.h:23\n-\tvdiv.f32\ts13, s12, s0\n-./src/trigonometry.h:22\n-\tvstr\ts13, [sp, #668]\t@ 0x29c\n-\tvdiv.f32\ts13, s12, s28\n-./src/trigonometry.h:23\n-\tvdiv.f32\ts13, s14, s15\n-./src/trigonometry.h:24\n-\tvstr\ts15, [sp, #156]\t@ 0x9c\n-./src/trigonometry.h:23\n-\tvstr\ts13, [sp, #60]\t@ 0x3c\n-./src/trigonometry.h:24\n-\tblcs\t22b64 <__cxa_finalize@plt+0x21b54>\n-surface_draw_model():\n-./src/viewer.c:416 (discriminator 1)\n-\tsubshi\tpc, r2, #0\n-./src/viewer.c:416\n-\tstmdaeq\tr0, {r0, r1, r2, r3, r6, ip, sp, lr, pc}\n-\tmovwls\tsl, #47901\t@ 0xbb1d\n-\tmovwls\tsl, #52000\t@ 0xcb20\n-\tmovwls\tsl, #56099\t@ 0xdb23\n-\tbge\te2f040 <__cxa_finalize@plt+0xe2e030>\n-\tblcc\t76c \n-\tandsls\tsl, r6, #62, 30\t@ 0xf8\n-./src/viewer.c:426\n-\trsblt\tpc, r0, sp, asr #17\n-\tldrbmi\tsl, [r3], pc, lsr #20\n-\t\t\t@ instruction: 0x46ca9215\n-\tstrbmi\tsl, [r1], ip, lsr #20\n-\tbge\t103ff18 <__cxa_finalize@plt+0x103ef08>\n-vec3_to_surface():\n-./src/viewer.c:341\n-\tbls\tff27fe38 <__cxa_finalize@plt+0xff27ee28>\n-\tldcge\t14, cr10, [r2, #-236]!\t@ 0xffffff14\n-\t\t\t@ instruction: 0x4698ac35\n-\tblhi\t3fe40 <__cxa_finalize@plt+0x3ee30>\n-\tsmladls\tsl, r7, r2, r9\n-surface_draw_model():\n-./src/viewer.c:426\n-\tsvclt\t0x0000e0f0\n-\tsvccc\t0x00b504f3\n-\tsvccc\t0x00ac5345\n-\tandeq\tr0, r0, r0\n-\tandeq\tfp, r1, r6, lsr ip\n-\tandeq\tr0, r0, r4, lsl r1\n-./src/viewer.c:443\n-\t\t\t@ instruction: 0xf50d9f0b\n-\tandcs\tr7, r0, sl, lsl #25\n-\tcdp\t0, 11, cr9, cr0, cr14, {2}\n-vec3_to_surface():\n-./src/viewer.c:342\n-\t\t\t@ instruction: 0xf50d2b45\n-surface_draw_model():\n-./src/viewer.c:443\n-\tldm\tr7, {r4, r7, r9, sl, fp, ip, sp, lr}\n+\tandhi\tpc, r7, #64\t@ 0x40\n+\tldc\t0, cr11, [sp], #148\t@ 0x94\n+\tpop\t{r4, r8, r9, fp, pc}\n+\tstrdlt\tr4, [r4], -r0\n+\t\t\t@ instruction: 0x46a34770\n+./src/surface.c:159\n+\tstrtmi\tr4, [r0], -r5, lsl #12\n+\tldmdbeq\tip!, {r0, r2, r3, r8, ip, sp, lr, pc}\n+\tmrc2\t7, 5, pc, cr2, cr15, {7}\n+\tldm\tfp!, {r1, r2, r3, r6, r7, r9, sl, lr}\n+\tstrbmi\tr0, [ip], pc\n+\tandeq\tlr, pc, r9, lsr #17\n+triangle_sort_by_x():\n+./src/surface.c:47\n+\tbeq\t403e0 <__cxa_finalize@plt+0x3f3d0>\n+./src/surface.c:53\n+\tldmdaeq\tr0!, {r0, r2, r3, r8, ip, sp, lr, pc}\n+surface_draw_triangle():\n+./src/surface.c:159\n+\tbeq\t27f8e0 <__cxa_finalize@plt+0x27e8d0>\n+\tbeq\t2bf9e4 <__cxa_finalize@plt+0x2be9d4>\n+\t\t\t@ instruction: 0x000fe8bb\n+\tandeq\tlr, pc, r9, lsr #17\n+\tbne\t2ff8f0 <__cxa_finalize@plt+0x2fe8e0>\n+./src/surface.c:161\n+\tmuleq\tr3, fp, r8\n+\tandeq\tlr, r3, r9, lsl #17\n+triangle_sort_by_x():\n+./src/surface.c:51\n+\tbvc\t3f938 <__cxa_finalize@plt+0x3e928>\n+./src/surface.c:49\n+\tbleq\t806f4 <__cxa_finalize@plt+0x7f6e4>\n+./src/surface.c:51\n+\tbvc\tffa40 <__cxa_finalize@plt+0xfea30>\n+\tldrbmi\tr4, [sl], r3, ror #12\n+\tcdp\t6, 11, cr4, cr4, cr1, {7}\n+\tvsqrt.f32\ts15, s15\n+\tvstrle\ts30, [ip, #-64]\t@ 0xffffffc0\n+./src/surface.c:54\n+\tldm\tip, {r2, r3, r8, r9, ip, sp}\n+./src/surface.c:53\n+\tstm\tr8, {r0, r1, r2}\n+\tldm\tr3, {r0, r1, r2}\n+./src/surface.c:54\n \tstm\tip, {r0, r1, r2}\n-\tbls\t3043bc <__cxa_finalize@plt+0x3033ac>\n-vec3_to_surface():\n-./src/viewer.c:342\n-\tbmi\t11bfa18 <__cxa_finalize@plt+0x11bea08>\n-./src/viewer.c:343\n-\tbvc\t11ffa1c <__cxa_finalize@plt+0x11fea0c>\n-./src/viewer.c:341\n-\tbcc\t117fb20 <__cxa_finalize@plt+0x117eb10>\n-./src/viewer.c:342\n-\tbmi\tff13fe8c <__cxa_finalize@plt+0xff13ee7c>\n-./src/viewer.c:343\n-\tbvc\tff1ffe90 <__cxa_finalize@plt+0xff1fee80>\n-./src/viewer.c:341\n-\tbcc\tff8ffe94 <__cxa_finalize@plt+0xff8fee84>\n-surface_draw_model():\n-./src/viewer.c:443\n-\tvmul.f32\ts24, s8, s14\n-vec3_to_surface():\n-./src/viewer.c:342\n-\tvmul.f64\td4, d7, d8\n-./src/viewer.c:343\n-\tstm\tlr, {r3, r8, r9, fp, ip, sp, lr}\n-surface_draw_model():\n-./src/viewer.c:443\n-\tcdp\t0, 2, cr0, cr3, cr7, {0}\n-vec3_to_surface():\n-./src/viewer.c:341\n-\tstmdbls\tsp, {r3, r8, r9, fp, ip, sp}\n-surface_draw_model():\n-./src/viewer.c:443\n-\tcdpvc\t5, 9, cr15, cr6, cr13, {0}\n-vec3_to_surface():\n-./src/viewer.c:342\n-\tblcs\t127fbe4 <__cxa_finalize@plt+0x127ebd4>\n-./src/viewer.c:343\n-\tblmi\t123fe98 <__cxa_finalize@plt+0x123ee88>\n-\tblmi\t27fbf8 <__cxa_finalize@plt+0x27ebe8>\n-./src/viewer.c:341\n-\tblvc\t11bfea0 <__cxa_finalize@plt+0x11bee90>\n-\tblvc\t27fbf0 <__cxa_finalize@plt+0x27ebe0>\n-\tbcc\t123fb5c <__cxa_finalize@plt+0x123eb4c>\n-surface_draw_model():\n-./src/viewer.c:443\n-\t\t\t@ instruction: 0xeeb7c907\n-vec3_to_surface():\n-./src/viewer.c:341\n-\tvcvt.f64.f32\td3, s7\n-./src/viewer.c:342\n-\tvcvt.f32.f64\ts4, d2\n-./src/viewer.c:343\n-\tvnmul.f64\td4, d19, d4\n-./src/viewer.c:341\n-\tvmov.f64\td3, #120\t@ 0x3fc00000 1.5\n-\tvstr\td7, [sp, #796]\t@ 0x31c\n-surface_draw_model():\n-./src/viewer.c:444\n-\tvmov.f32\ts4, s12\n-vec3_to_surface():\n-./src/viewer.c:342\n-\tvstr\td2, [sp, #276]\t@ 0x114\n-surface_draw_model():\n-./src/viewer.c:444\n-\tvldr\ts8, [sp, #284]\t@ 0x11c\n-vec3_to_surface():\n-./src/viewer.c:342\n-\tvstr\ts8, [sp, #292]\t@ 0x124\n-./src/viewer.c:341\n-\tvldr\ts14, [sp, #276]\t@ 0x114\n-./src/viewer.c:343\n-\tvrintx.f32\ts14, s20\n-./src/viewer.c:342\n-\tvcvt.f64.f32\td4, s8\n-./src/viewer.c:343\n-\tvnmul.f32\ts14, s9, s14\n-./src/viewer.c:342\n-\tvmul.f64\td4, d7, d8\n-./src/viewer.c:343\n-\tvmla.f64\td7, d4, d8\n-./src/viewer.c:342\n-\tvmov.f64\td2, d9\n-./src/viewer.c:343\n-\tvmls.f64\td4, d7, d8\n-\tvmov.f64\td4, #9\t@ 0x40480000 3.125\n-./src/viewer.c:341\n-\tvmls.f64\td7, d3, d6\n-\tvmov.f64\td7, #121\t@ 0x3fc80000 1.5625000\n-./src/viewer.c:342\n-\tvcvt.f32.f64\ts4, d2\n-./src/viewer.c:343\n-\tvcvt.f32.f64\ts8, d4\n-./src/viewer.c:341\n-\tvstr\td7, [sp, #796]\t@ 0x31c\n-surface_draw_model():\n-./src/viewer.c:445\n-\tvstr\ts4, [sp, #292]\t@ 0x124\n-\tvstr\ts8, [sp, #296]\t@ 0x128\n-vec3_to_surface():\n-./src/viewer.c:341\n-\tstm\tlr, {r3, r6, r9, fp, ip, sp, lr}\n-surface_draw_model():\n-./src/viewer.c:443\n-\tstrbtmi\tr0, [r0], -r7\n-vec3_to_surface():\n-./src/viewer.c:342\n-\tbmi\t133fad0 <__cxa_finalize@plt+0x133eac0>\n-./src/viewer.c:343\n-\tbvc\t137fad4 <__cxa_finalize@plt+0x137eac4>\n-./src/viewer.c:341\n-\tbcc\t12ffbd8 <__cxa_finalize@plt+0x12febc8>\n-./src/viewer.c:342\n-\tbmi\tff13ff44 <__cxa_finalize@plt+0xff13ef34>\n-./src/viewer.c:343\n-\tbvc\tff1fff48 <__cxa_finalize@plt+0xff1fef38>\n-./src/viewer.c:341\n-\tbcc\tff8fff4c <__cxa_finalize@plt+0xff8fef3c>\n-./src/viewer.c:342\n-\tblmi\t23fd04 <__cxa_finalize@plt+0x23ecf4>\n-./src/viewer.c:343\n-\tblvc\t23fd14 <__cxa_finalize@plt+0x23ed04>\n-./src/viewer.c:341\n-\tblcc\t23fd08 <__cxa_finalize@plt+0x23ecf8>\n-./src/viewer.c:342\n-\tblpl\t127fc90 <__cxa_finalize@plt+0x127ec80>\n-./src/viewer.c:343\n-\tblmi\t123ff44 <__cxa_finalize@plt+0x123ef34>\n-\tblmi\t27fca4 <__cxa_finalize@plt+0x27ec94>\n-./src/viewer.c:341\n-\tblvs\t27fc98 <__cxa_finalize@plt+0x27ec88>\n-./src/viewer.c:342\n-\tblpl\tff17ff6c <__cxa_finalize@plt+0xff17ef5c>\n-./src/viewer.c:343\n-\tblmi\tff13ff70 <__cxa_finalize@plt+0xff13ef60>\n-./src/viewer.c:341\n-\tblvs\tff1bff74 <__cxa_finalize@plt+0xff1bef64>\n-surface_draw_model():\n-./src/viewer.c:446\n-\tbpl\t133fad0 <__cxa_finalize@plt+0x133eac0>\n-\tbmi\t137fad4 <__cxa_finalize@plt+0x137eac4>\n-vec3_to_surface():\n-./src/viewer.c:341\n-\tbvs\t12ffad8 <__cxa_finalize@plt+0x12feac8>\n-surface_draw_model():\n-./src/viewer.c:448\n-\tldc2\t7, cr15, [r0, #-1012]!\t@ 0xfffffc0c\n-vec3_dot_product():\n-./src/trigonometry.h:76\n-\tbvc\t3ffc20 <__cxa_finalize@plt+0x3fec10>\n-surface_draw_model():\n-./src/viewer.c:448\n-\tbeq\t9bfae4 <__cxa_finalize@plt+0x9bead4>\n-\tbeq\t9ffbe8 <__cxa_finalize@plt+0x9febd8>\n-vec3_dot_product():\n-./src/trigonometry.h:76\n-\tbvc\tff9ffd38 <__cxa_finalize@plt+0xff9fed28>\n-\tbvc\t3bfc30 <__cxa_finalize@plt+0x3bec20>\n-surface_draw_model():\n-./src/viewer.c:448\n-\tbne\ta3faf4 <__cxa_finalize@plt+0xa3eae4>\n-vec3_dot_product():\n-./src/trigonometry.h:76\n-\tbvc\t19ffcc4 <__cxa_finalize@plt+0x19fecb4>\n-\tbvc\t43fc3c <__cxa_finalize@plt+0x43ec2c>\n-char_from_normal():\n-./src/viewer.c:349 (discriminator 1)\n-\tbleq\t123ff8c <__cxa_finalize@plt+0x123ef7c>\n-./src/viewer.c:350\n-\tbgt\t63fb44 <__cxa_finalize@plt+0x63eb34>\n-vec3_dot_product():\n-./src/trigonometry.h:76\n-\tbvc\t19ffcd8 <__cxa_finalize@plt+0x19fecc8>\n-char_from_normal():\n-./src/viewer.c:349 (discriminator 1)\n-\tbvc\tff1fffb4 <__cxa_finalize@plt+0xff1fefa4>\n-\tbleq\t23fcf8 <__cxa_finalize@plt+0x23ece8>\n-./src/viewer.c:350\n-\tbvc\tff3400c0 <__cxa_finalize@plt+0xff33f0b0>\n-./src/viewer.c:349 (discriminator 1)\n-\tbleq\tff03ffc0 <__cxa_finalize@plt+0xff03efb0>\n-./src/viewer.c:350\n-\tbeq\t9ffd68 <__cxa_finalize@plt+0x9fed58>\n-\tstc\t7, cr15, [lr], #-1008\t@ 0xfffffc10\n-./src/viewer.c:350 (discriminator 1)\n-\tbvc\tff0400e4 <__cxa_finalize@plt+0xff03f0d4>\n-./src/viewer.c:353\n-\tbne\t43fd64 <__cxa_finalize@plt+0x43ed54>\n-\tvmov.32\tr9, d7[0]\n-./src/viewer.c:350 (discriminator 1)\n-\tb\t88ef3c <__cxa_finalize@plt+0x88df2c>\n-./src/viewer.c:351\n-\taddsmi\tr7, r3, #536870926\t@ 0x2000000e\n-./src/viewer.c:353\n-\tldrmi\tfp, [r1], -r8, asr #31\n-./src/viewer.c:355\n-\tvmovpl\tr9, sl, d2\n-surface_draw_model():\n-./src/viewer.c:455\n-\tblls\t66a958 <__cxa_finalize@plt+0x669948>\n-\t\t\t@ instruction: 0xf0002900\n-\t\t\t@ instruction: 0xf8da815a\n-./src/viewer.c:455 (discriminator 1)\n-\tldrmi\tr1, [r9], #-20\t@ 0xffffffec\n-\t\t\t@ instruction: 0xf8dd68cb\n-./src/viewer.c:455 (discriminator 4)\n-\tstrbtmi\tlr, [ip], r8, lsr #32\n-\tmovwcs\tlr, #35277\t@ 0x89cd\n-\tmovwls\tr2, #29441\t@ 0x7301\n-./src/viewer.c:416 (discriminator 2)\n-\tstmdbeq\tr1, {r0, r3, r8, ip, sp, lr, pc}\n-./src/viewer.c:455 (discriminator 4)\n+\tldm\tr8, {r0, r1, r2}\n+./src/surface.c:55\n+\tstm\tr3, {r0, r1, r2}\n+\t\t\t@ instruction: 0xf1ba0007\n+./src/surface.c:49 (discriminator 1)\n+\tandle\tr0, sp, r2, lsl #30\n+./src/surface.c:51\n+\tbvc\t1bfa68 <__cxa_finalize@plt+0x1bea58>\n+./src/surface.c:49 (discriminator 1)\n+\tstmdbeq\tip, {r0, r3, r8, ip, sp, lr, pc}\n+./src/surface.c:51\n+\tbvc\t3f97c <__cxa_finalize@plt+0x3e96c>\n+\tbeq\tc044c <__cxa_finalize@plt+0xbf43c>\n+\tcdp\t6, 11, cr4, cr4, cr11, {2}\n+\tvsqrt.f32\ts15, s15\n+\tvstmiale\tr1!, {s31-s46}\n+./src/surface.c:47 (discriminator 1)\n+\tstceq\t1, cr15, [ip], {12}\n+\tbeq\t80460 <__cxa_finalize@plt+0x7f450>\n+\tsvceq\t0x0002f1bb\n+\tldm\tlr!, {r2, r3, r6, r7, r8, ip, lr, pc}\n+./src/surface.c:59\n+\t\t\t@ instruction: 0xf10d000f\n+\tstrbtmi\tr0, [r0], r4, ror #24\n+surface_draw_triangle():\n+./src/surface.c:166\n+\tblls\t3fe10 <__cxa_finalize@plt+0x3ee00>\n+./src/surface.c:169\n+\tblt\tff53fab8 <__cxa_finalize@plt+0xff53eaa8>\n+triangle_sort_by_x():\n+./src/surface.c:59\n+\tandeq\tlr, pc, ip, lsr #17\n \t\t\t@ instruction: 0x000fe8be\n \tandeq\tlr, pc, ip, lsr #17\n-\tmuleq\tr7, lr, r8\n-\tandeq\tlr, r7, ip, lsl #17\n-\tldm\tr6, {r3, r4, r6, r9, sl, lr}\n-\t\t\t@ instruction: 0xf7fd000e\n-\t\t\t@ instruction: 0xf8dafdd3\n-./src/viewer.c:416 (discriminator 1)\n-\tstrbmi\tr3, [fp, #-12]\n-\tteqphi\tlr, r0, asr #4\t@ p-variant is OBSOLETE\n-./src/viewer.c:418\n-\t\t\t@ instruction: 0x2014f8da\n-\tmovwne\tlr, #39503\t@ 0x9a4f\n-./src/viewer.c:422\n-\tldrdne\tpc, [r8], -sl\n-\tldmne\tr0, {r2, r3, r8, r9, sl, sp}^\n-\tldmib\tr0, {r1, r4, r6, r7, fp, ip, lr}^\n-./src/viewer.c:420\n-\tblx\t1fc56e <__cxa_finalize@plt+0x1fb55e>\n-./src/viewer.c:422\n-\tblx\t1c8d76 <__cxa_finalize@plt+0x1c7d66>\n-./src/viewer.c:423\n-\tblx\t1cbdaa <__cxa_finalize@plt+0x1cad9a>\n-./src/viewer.c:424\n-\tsvcls\t0x000b1c00\n-./src/viewer.c:422\n-\tstm\tr7, {r0, r1, r2, r9, fp, lr, pc}\n-\tsvcls\t0x000c0007\n-./src/viewer.c:423\n-\tmuleq\tr7, lr, r8\n-\tandeq\tlr, r7, r7, lsl #17\n-./src/viewer.c:424\n-\tldm\tip, {r0, r2, r3, r8, r9, sl, fp, ip, pc}\n-\tstm\tr7, {r0, r1, r2}\n-\tandcs\tr0, r0, r7\n-./src/viewer.c:426\n-\tsubls\tr9, r4, fp, lsl #30\n-\tmuleq\tr7, r7, r8\n-\tandeq\tlr, r7, r6, lsl #17\n-\tbvc\tf7fd14 <__cxa_finalize@plt+0xf7ed04>\n-\tbvs\teffd18 <__cxa_finalize@plt+0xefed08>\n-\tvmul.f32\ts18, s22, s24\n-vec3_rotate_y():\n-./src/trigonometry.h:30\n-\tsvcls\t0x000a7aa7\n-./src/trigonometry.h:31\n-\tbvc\t9fff5c <__cxa_finalize@plt+0x9fef4c>\n-\tbvc\tfe9bfee0 <__cxa_finalize@plt+0xfe9beed0>\n-surface_draw_model():\n-./src/viewer.c:426\n-\tvnmls.f32\ts24, s22, s14\n-vec3_rotate_y():\n-./src/trigonometry.h:30\n-\tstm\tr7, {r1, r2, r5, r9, fp, ip, sp, lr}\n-surface_draw_model():\n-./src/viewer.c:426\n-\tstmdbls\tsp, {r0, r1, r2}\n-vec3_rotate_y():\n-./src/trigonometry.h:34\n-\tstmdbgt\tr7, {r1, r2, r4, r8, r9, sl, fp, ip, pc}\n-surface_draw_model():\n-./src/viewer.c:426\n-\tandeq\tlr, r7, r8, lsl #17\n-vec3_rotate_x():\n-./src/trigonometry.h:39\n-\tbcc\tfe9ffe74 <__cxa_finalize@plt+0xfe9fee64>\n-\tmuleq\tr7, r6, r8\n-\tandeq\tlr, r7, r5, lsl #17\n-./src/trigonometry.h:40\n-\tbpl\t9ffe80 <__cxa_finalize@plt+0x9fee70>\n-vec3_rotate_y():\n-./src/trigonometry.h:34\n-\tbvc\tcbfc10 <__cxa_finalize@plt+0xcbec00>\n-vec3_to_surface():\n-./src/viewer.c:341\n-\tbcs\tff2000bc <__cxa_finalize@plt+0xff1ff0ac>\n-vec3_rotate_y():\n-./src/trigonometry.h:34\n-\tbvc\td3fd18 <__cxa_finalize@plt+0xd3ed08>\n-\tmuleq\tr7, r5, r8\n-\tandeq\tlr, r7, r7, lsl #17\n-\tbvc\t103fd64 <__cxa_finalize@plt+0x103ed54>\n-\tbvs\tfbfd68 <__cxa_finalize@plt+0xfbed58>\n-vec3_to_surface():\n-./src/viewer.c:341\n-\tblcs\t23fe80 <__cxa_finalize@plt+0x23ee70>\n-\tmuleq\tr7, r7, r8\n-vec3_rotate_y():\n-./src/trigonometry.h:30\n-\tbvc\tfe9ffeac <__cxa_finalize@plt+0xfe9fee9c>\n-./src/trigonometry.h:31\n-\tbvc\t9fffb0 <__cxa_finalize@plt+0x9fefa0>\n-\tcdp\t15, 4, cr9, cr11, cr10, {0}\n-\tstm\tr4, {r1, r2, r5, r7, r9, fp, ip, sp, lr}\n-\tcdp\t0, 1, cr0, cr11, cr7, {0}\n-./src/trigonometry.h:30\n-\tstm\tr6, {r1, r2, r5, r9, fp, ip, sp, lr}\n-surface_draw_model():\n-./src/viewer.c:428\n-\tldm\tr7, {r0, r1, r2}\n-vec3_rotate_y():\n-./src/trigonometry.h:34\n-\tstm\tr5, {r0, r1, r2}\n-\tsvcls\t0x00150007\n-\tbvc\td3fd58 <__cxa_finalize@plt+0xd3ed48>\n-vec3_rotate_x():\n-./src/trigonometry.h:39\n-\tbmi\tfe9ffed0 <__cxa_finalize@plt+0xfe9feec0>\n-./src/trigonometry.h:40\n-\tbvs\t9ffed4 <__cxa_finalize@plt+0x9feec4>\n-vec3_rotate_y():\n-./src/trigonometry.h:34\n-\tbvc\tcbfc64 <__cxa_finalize@plt+0xcbec54>\n-vec3_to_surface():\n-./src/viewer.c:341\n-\tbgt\tff200110 <__cxa_finalize@plt+0xff1ff100>\n-vec3_rotate_y():\n-./src/trigonometry.h:34\n-\tmuleq\tr7, r5, r8\n-\tandeq\tlr, r7, r7, lsl #17\n-\tmuleq\tr7, r7, r8\n-\tandeq\tlr, r7, r4, lsl #17\n-surface_draw_model():\n-./src/viewer.c:429\n-\tldcl\t15, cr9, [sp, #40]\t@ 0x28\n-\t\t\t@ instruction: 0xee2c5a3c\n-vec3_to_surface():\n-./src/viewer.c:341\n-\tvldr\td28, [sp, #32]\n-\tstm\tr7, {r0, r1, r6, r9, fp, ip, sp, lr}\n-surface_draw_model():\n-./src/viewer.c:429\n-\tcdp\t0, 0, cr0, cr10, cr7, {0}\n-vec3_rotate_x():\n-./src/trigonometry.h:40\n-\tvldr\ts11, [sp, #660]\t@ 0x294\n-\t\t\t@ instruction: 0xee1a6a3f\n-./src/trigonometry.h:39\n-\tvmul.f32\ts6, s22, s11\n-vec3_rotate_y():\n-./src/trigonometry.h:30\n-\tvldr\ts0, [sp, #668]\t@ 0x29c\n-\tvnmul.f32\ts15, s22, s2\n-./src/trigonometry.h:31\n-\tsvcls\t0x00177a27\n-vec3_rotate_x():\n-./src/trigonometry.h:40\n-\tbvs\tfe9bfe9c <__cxa_finalize@plt+0xfe9bee8c>\n-./src/trigonometry.h:39\n-\tbmi\t9bfee0 <__cxa_finalize@plt+0x9beed0>\n-vec3_rotate_y():\n-./src/trigonometry.h:31\n-\tbvc\tfe1fffa8 <__cxa_finalize@plt+0xfe1fef98>\n-./src/trigonometry.h:30\n-\tbeq\t1ffeec <__cxa_finalize@plt+0x1feedc>\n-./src/trigonometry.h:34\n-\tmuleq\tr7, r8, r8\n-\tandeq\tlr, r7, r5, lsl #17\n-vec3_to_surface():\n-./src/viewer.c:343\n-\tbpl\tff180168 <__cxa_finalize@plt+0xff17f158>\n-./src/viewer.c:342\n-\tbcc\tff10016c <__cxa_finalize@plt+0xff0ff15c>\n-./src/viewer.c:343\n-\tbvs\tff1c0170 <__cxa_finalize@plt+0xff1bf160>\n-./src/viewer.c:342\n-\tbmi\tff140174 <__cxa_finalize@plt+0xff13f164>\n-./src/viewer.c:343\n-\tblpl\t23ff30 <__cxa_finalize@plt+0x23ef20>\n-vec3_rotate_y():\n-./src/trigonometry.h:34\n-\tbvc\td3fdd4 <__cxa_finalize@plt+0xd3edc4>\n-\tbeq\tcbfcd8 <__cxa_finalize@plt+0xcbecc8>\n-vec3_rotate_x():\n-./src/trigonometry.h:39\n-\tbeq\tfea00050 <__cxa_finalize@plt+0xfe9ff040>\n-vec3_rotate_y():\n-./src/trigonometry.h:34\n-\tmuleq\tr7, r5, r8\n-vec3_to_surface():\n-./src/viewer.c:343\n-\tblvs\t23ff48 <__cxa_finalize@plt+0x23ef38>\n-./src/viewer.c:342\n-\tbl\t23ff44 <__cxa_finalize@plt+0x23ef34>\n-./src/viewer.c:343\n-\tblmi\t1240178 <__cxa_finalize@plt+0x123f168>\n-\tblmi\t27fed0 <__cxa_finalize@plt+0x27eec0>\n-\tblpl\t1240180 <__cxa_finalize@plt+0x123f170>\n-vec3_rotate_y():\n-./src/trigonometry.h:34\n-\tandeq\tlr, r7, r7, lsl #17\n-vec3_rotate_x():\n-./src/trigonometry.h:40\n-\tbvc\t9fff70 <__cxa_finalize@plt+0x9fef60>\n-vec3_to_surface():\n-./src/viewer.c:343\n-\tblpl\t27fee4 <__cxa_finalize@plt+0x27eed4>\n-\tmuleq\tr7, r7, r8\n-surface_draw_model():\n-./src/viewer.c:430\n-\tandeq\tlr, r7, r8, lsl #17\n-vec3_to_surface():\n-./src/viewer.c:342\n-\tblle\t23ff64 <__cxa_finalize@plt+0x23ef54>\n-\tandeq\tlr, r7, r4, lsl #17\n-./src/viewer.c:341\n-\tbne\tff0401bc <__cxa_finalize@plt+0xff03f1ac>\n-\tbvc\t10bfe58 <__cxa_finalize@plt+0x10bee48>\n-\tbvs\tbfd54 <__cxa_finalize@plt+0xbed44>\n-./src/viewer.c:343\n-\tblmi\tff1401c8 <__cxa_finalize@plt+0xff13f1b8>\n-surface_draw_model():\n-./src/viewer.c:441\n-\t\t\t@ instruction: 0xeef79a11\n-vec3_to_surface():\n-./src/viewer.c:343\n-\tvnmla.f64\td22, d26, d5\n-vec3_rotate_x():\n-./src/trigonometry.h:39\n-\tvmla.f32\ts0, s20, s15\n-./src/trigonometry.h:40\n-\tvldr\ts14, [fp, #668]\t@ 0x29c\n-vec3_to_surface():\n-./src/viewer.c:342\n-\tvstr\ts10, [sp, #12]\n-./src/viewer.c:343\n-\t\t\t@ instruction: 0xee214a3d\n-./src/viewer.c:341\n-\ttstls\tr9, #8, 22\t@ 0x2000\n-./src/viewer.c:343\n-\tbvs\t103fe40 <__cxa_finalize@plt+0x103ee30>\n-./src/viewer.c:341\n-\tbvs\tff1c01ec <__cxa_finalize@plt+0xff1bf1dc>\n-./src/viewer.c:342\n-\tbpl\tff1801f0 <__cxa_finalize@plt+0xff17f1e0>\n-./src/viewer.c:341\n-\tblvs\t23ffb0 <__cxa_finalize@plt+0x23efa0>\n-./src/viewer.c:342\n-\tbcc\tff8401f8 <__cxa_finalize@plt+0xff83f1e8>\n-./src/viewer.c:343\n-\tbvc\tff2001fc <__cxa_finalize@plt+0xff1ff1ec>\n-./src/viewer.c:342\n-\tblpl\t23ffb8 <__cxa_finalize@plt+0x23efa8>\n-./src/viewer.c:341\n-\tblmi\t11c01e8 <__cxa_finalize@plt+0x11bf1d8>\n-./src/viewer.c:342\n-\tblcc\t23ffb8 <__cxa_finalize@plt+0x23efa8>\n-./src/viewer.c:341\n-\tblmi\t27ff38 <__cxa_finalize@plt+0x27ef28>\n-./src/viewer.c:343\n-\tblvc\t23ffd0 <__cxa_finalize@plt+0x23efc0>\n-./src/viewer.c:341\n-\tblcs\t11c01f8 <__cxa_finalize@plt+0x11bf1e8>\n-\tblx\t11c01fe <__cxa_finalize@plt+0x11bf1ee>\n-\tblcs\t27ff70 <__cxa_finalize@plt+0x27ef60>\n-\tblx\t27ff4a <__cxa_finalize@plt+0x27ef3a>\n-./src/viewer.c:342\n-\tblgt\t1180208 <__cxa_finalize@plt+0x117f1f8>\n-\tblne\t118020c <__cxa_finalize@plt+0x117f1fc>\n-\tblne\t127ff84 <__cxa_finalize@plt+0x127ef74>\n-\tblgt\t127ff8c <__cxa_finalize@plt+0x127ef7c>\n-./src/viewer.c:341\n-\tbleq\tff140334 <__cxa_finalize@plt+0xff13f324>\n-./src/viewer.c:342\n-\tblmi\t118021c <__cxa_finalize@plt+0x117f20c>\n-\tblmi\t127ff6c <__cxa_finalize@plt+0x127ef5c>\n-./src/viewer.c:343\n-\tblcc\t1240224 <__cxa_finalize@plt+0x123f214>\n-\tblcc\t27ff84 <__cxa_finalize@plt+0x27ef74>\n-./src/viewer.c:341\n-\tblcs\tff0c0348 <__cxa_finalize@plt+0xff0bf338>\n-./src/viewer.c:342\n-\tblgt\tff34024c <__cxa_finalize@plt+0xff33f23c>\n-\tblcs\tff080250 <__cxa_finalize@plt+0xff07f240>\n-./src/viewer.c:341\n-\tblx\tff400256 <__cxa_finalize@plt+0xff3ff246>\n-\tbeq\teffeb0 <__cxa_finalize@plt+0xefeea0>\n-\tbcs\tfbfeb4 <__cxa_finalize@plt+0xfbeea4>\n-./src/viewer.c:342\n-\tbcs\tf3fdb8 <__cxa_finalize@plt+0xf3eda8>\n-\tbgt\tfffdbc <__cxa_finalize@plt+0xffedac>\n-\tblmi\tff140268 <__cxa_finalize@plt+0xff13f258>\n-./src/viewer.c:341\n-\tblx\t107fdc4 <__cxa_finalize@plt+0x107edb4>\n-./src/viewer.c:343\n-\tblcc\tff100270 <__cxa_finalize@plt+0xff0ff260>\n-./src/viewer.c:342\n-\tbmi\t10bfdcc <__cxa_finalize@plt+0x10bedbc>\n-./src/viewer.c:343\n-\tbcc\t10ffdd0 <__cxa_finalize@plt+0x10fedc0>\n-surface_draw_model():\n-./src/viewer.c:441\n-\t\t\t@ instruction: 0xf47f2a00\n-\t\t\t@ instruction: 0x4630adf1\n-./src/viewer.c:452\n-\tblx\tfec4279e <__cxa_finalize@plt+0xfec4178e>\n-vec3_dot_product():\n-./src/trigonometry.h:76\n-\tbvc\t3fff20 <__cxa_finalize@plt+0x3fef10>\n-surface_draw_model():\n-./src/viewer.c:452\n-\tbeq\ta7fde4 <__cxa_finalize@plt+0xa7edd4>\n-\tbeq\tabfee8 <__cxa_finalize@plt+0xabeed8>\n-vec3_dot_product():\n-./src/trigonometry.h:76\n-\tbvc\tffa00038 <__cxa_finalize@plt+0xff9ff028>\n-\tbvc\t3bff30 <__cxa_finalize@plt+0x3bef20>\n-surface_draw_model():\n-./src/viewer.c:452\n-\tbne\taffdf4 <__cxa_finalize@plt+0xafede4>\n-vec3_dot_product():\n-./src/trigonometry.h:76\n-\tbvc\t19fffc4 <__cxa_finalize@plt+0x19fefb4>\n-\t\t\t@ instruction: 0xf04fe67e\n-surface_draw_model():\n-./src/viewer.c:455 (discriminator 2)\n-\t\t\t@ instruction: 0xe6a633ff\n-./src/viewer.c:404\n-\tblmi\t256ff0 <__cxa_finalize@plt+0x255fe0>\n-\tldmpl\tr3, {r1, r3, r4, r5, r6, sl, lr}^\n-./src/viewer.c:457\n-\tblls\t13de840 <__cxa_finalize@plt+0x13dd830>\n-\t\t\t@ instruction: 0xf04f405a\n-\tmrsle\tr0, LR_abt\n-\tldc\t0, cr11, [sp], #324\t@ 0x144\n-\tpop\t{r4, r8, r9, fp, pc}\n-\t\t\t@ instruction: 0xf7fc8ff0\n-\tsvclt\t0x0000ebae\n-\tandeq\tfp, r1, r4, lsl #14\n+\tmuleq\tr3, lr, r8\n+\tandeq\tlr, r3, ip, lsl #17\n+surface_draw_triangle():\n+./src/surface.c:161\n+\t\t\t@ instruction: 0x000fe8b8\n+\tldm\tr8!, {r0, r1, r2, r3, sl, lr, pc}\n+\tstrgt\tr0, [pc], #-15\t@ 435c <__cxa_finalize@plt+0x334c>\n+./src/surface.c:163\n+\tbgt\t13f9b4 <__cxa_finalize@plt+0x13e9a4>\n+./src/surface.c:161\n+\tb\t7ff9d8 <__cxa_finalize@plt+0x7fe9c8>\n+\tbvs\t73fadc <__cxa_finalize@plt+0x73eacc>\n+./src/surface.c:166\n+\tble\tff33fe48 <__cxa_finalize@plt+0xff33ee38>\n+./src/surface.c:161\n+\tbvs\t77f9e4 <__cxa_finalize@plt+0x77e9d4>\n+./src/surface.c:167\n+\tbvc\tff3bfe50 <__cxa_finalize@plt+0xff3bee40>\n+./src/surface.c:161\n+\tblt\t67f9ec <__cxa_finalize@plt+0x67e9dc>\n+\tmuleq\tr3, ip, r8\n+\tandeq\tlr, r3, r4, lsl #17\n+./src/surface.c:166\n+\tblpl\t27fc38 <__cxa_finalize@plt+0x27ec28>\n+./src/surface.c:161\n+\tbhi\t6bf9fc <__cxa_finalize@plt+0x6be9ec>\n+\tbhi\t6ffb00 <__cxa_finalize@plt+0x6feaf0>\n+\tb\t83fb04 <__cxa_finalize@plt+0x83eaf4>\n+\tbvs\t7fac8 <__cxa_finalize@plt+0x7eab8>\n+./src/surface.c:167\n+\tblvc\t117fc74 <__cxa_finalize@plt+0x117ec64>\n+./src/surface.c:161\n+\tbvs\t3f9d0 <__cxa_finalize@plt+0x3e9c0>\n+./src/surface.c:167\n+\tblge\tff1fff7c <__cxa_finalize@plt+0xff1fef6c>\n+./src/surface.c:169\n+\tbge\tffafff74 <__cxa_finalize@plt+0xffafef64>\n+\tblx\t43ff6c <__cxa_finalize@plt+0x43ef5c>\n+\tsvcge\t0x0059f53f\n+./src/surface.c:166\n+\tbeq\tff2ffe8c <__cxa_finalize@plt+0xff2fee7c>\n+./src/surface.c:169 (discriminator 1)\n+\tbvc\tbfb08 <__cxa_finalize@plt+0xbeaf8>\n+./src/surface.c:166\n+\tbleq\t17fc78 <__cxa_finalize@plt+0x17ec68>\n+\tbleq\tff03fe98 <__cxa_finalize@plt+0xff03ee88>\n+./src/surface.c:169 (discriminator 1)\n+\tbvc\tff03ff90 <__cxa_finalize@plt+0xff03ef80>\n+\tblx\t43ff88 <__cxa_finalize@plt+0x43ef78>\n+\tsvcge\t0x004bf53f\n+idx_x():\n+./src/surface.c:112\n+\tbeq\t33fdcc <__cxa_finalize@plt+0x33edbc>\n+\tldrdhi\tpc, [r4], -r5\n+\tmvnscc\tpc, #8, 2\n+\tbcc\t43fc00 <__cxa_finalize@plt+0x43ebf0>\n+\tldc\t7, cr15, [r0, #-1008]!\t@ 0xfffffc10\n+\tbvc\t103ffa0 <__cxa_finalize@plt+0x103ef90>\n+\tbeq\tfe33fe0c <__cxa_finalize@plt+0xfe33edfc>\n+\tbge\t12bfec8 <__cxa_finalize@plt+0x12beeb8>\n+\tbvc\tff9fffe0 <__cxa_finalize@plt+0xff9fefd0>\n+./src/surface.c:112 (discriminator 1)\n+\tbvc\tff9fffd0 <__cxa_finalize@plt+0xff9fefc0>\n+\tbge\tff9ffec4 <__cxa_finalize@plt+0xff9feeb4>\n+\tblx\t43ffbc <__cxa_finalize@plt+0x43efac>\n+\tcdp\t15, 15, cr11, cr0, cr8, {2}\n+\tvcmp.f32\ts15, s20\n+./src/surface.c:112 (discriminator 3)\n+\tvsqrt.f32\ts15, s23\n+\tsvclt\t0x0048fa10\n+\tbvc\t1afffcc <__cxa_finalize@plt+0x1afefbc>\n+\tbvc\tffa00004 <__cxa_finalize@plt+0xff9feff4>\n+\tbge\tfe43fc70 <__cxa_finalize@plt+0xfe43ec60>\n+./src/surface.c:112\n+\tldc\t7, cr15, [r2, #-1008]\t@ 0xfffffc10\n+\tbvc\tff040010 <__cxa_finalize@plt+0xff03f000>\n+./src/surface.c:112 (discriminator 1)\n+\tbvc\tffa00000 <__cxa_finalize@plt+0xff9feff0>\n+\tbvc\tff2bfff4 <__cxa_finalize@plt+0xff2befe4>\n+\tblx\t43ffec <__cxa_finalize@plt+0x43efdc>\n+\tmrc\t15, 5, fp, cr0, cr8, {6}\n+\tvcmp.f32\ts20, s15\n+./src/surface.c:112 (discriminator 3)\n+\tvsqrt.f32\ts21, s23\n+\tsvclt\t0x0048fa10\n+\tbge\t1affefc <__cxa_finalize@plt+0x1afeeec>\n+\tbvc\tff2c0034 <__cxa_finalize@plt+0xff2bf024>\n+\tblt\tfe43fca0 <__cxa_finalize@plt+0xfe43ec90>\n+surface_draw_triangle():\n+./src/surface.c:175 (discriminator 1)\n+\t\t\t@ instruction: 0xf6ff45d3\n+\tldcl\t15, cr10, [sp, #40]\t@ 0x28\n+\tmovwcs\tr7, #51721\t@ 0xca09\n+\tbgt\t2bfbc8 <__cxa_finalize@plt+0x2bebb8>\n+\tbleq\t80884 <__cxa_finalize@plt+0x7f874>\n+\tbgt\t2ffad0 <__cxa_finalize@plt+0x2feac0>\n+\tbvc\t1ffb94 <__cxa_finalize@plt+0x1feb84>\n+\t\t\t@ instruction: 0xf908fb03\n+./src/surface.c:164\n+\tbvc\t17fbbc <__cxa_finalize@plt+0x17ebac>\n+\tbvs\t7fbe0 <__cxa_finalize@plt+0x7ebd0>\n+\tbvs\t3fae4 <__cxa_finalize@plt+0x3ead4>\n+\tbvc\t1bfba8 <__cxa_finalize@plt+0x1beb98>\n+\tcdp\t0, 15, cr14, cr4, cr12, {2}\n+limit_y_1():\n+./src/surface.c:125\n+\tvsqrt.f32\ts11, s28\n+\tvmov.i16\td15, #0\t@ 0x0000\n+\tmrc\t0, 7, r8, cr4, cr0, {7}\n+./src/surface.c:127\n+\tvsub.f32\ts12, s11, s11\n+./src/surface.c:128\n+\tvsqrt.f32\ts11, s22\n+./src/surface.c:127\n+\tvmov.i16\td15, #0\t@ 0x0000\n+\tcdp\t0, 3, cr8, cr5, cr15, {7}\n+./src/surface.c:129\n+\tvsub.f32\ts15, s29, s13\n+\tvnmul.f32\ts15, s15, s12\n+\tvadd.f32\ts14, s29, s14\n+\t\t\t@ instruction: 0xee877a66\n+\tvadd.f32\ts0, s1, s14\n+\tvadd.f32\ts0, s28, s12\n+limit_y_2():\n+./src/surface.c:138\n+\tvnmul.f32\ts14, s15, s16\n+\tvadd.f32\ts14, s28, s10\n+\t\t\t@ instruction: 0xeec75a4b\n+\tvadd.f32\ts15, s14, s10\n+\t\t\t@ instruction: 0xeef47a88\n+\tvsqrt.f32\ts15, s0\n+\tsvclt\t0x00ccfa10\n+\tandcs\tr2, r0, #268435456\t@ 0x10000000\n+\tmovwcs\tfp, #8012\t@ 0x1f4c\n+\tblcs\td0d4 <__cxa_finalize@plt+0xc0c4>\n+surface_draw_triangle():\n+./src/surface.c:182\n+\tcdp\t15, 11, cr11, cr0, cr12, {0}\n+\tvmov.f32\ts14, s15\n+\tvcmp.f32\ts14, #0.0\n+./src/surface.c:184\n+\tvsqrt.f32\ts15, s0\n+\tstrle\tpc, [lr], #-2576\t@ 0xfffff5f0\n+\tvstr\ts4, [sp]\n+\tvstr\ts15, [sp]\n+\tsvclt\t0x00085a01\n+\tbeq\t19fffb8 <__cxa_finalize@plt+0x19fefa8>\n+./src/surface.c:184 (discriminator 2)\n+\tbvc\tffc50 <__cxa_finalize@plt+0xfec40>\n+\tbvc\tff0400d0 <__cxa_finalize@plt+0xff03f0c0>\n+\tblx\t4400c8 <__cxa_finalize@plt+0x43f0b8>\n+\t\t\t@ instruction: 0xf10ad51a\n+./src/surface.c:175 (discriminator 2)\n+\tldrbmi\tr0, [sl, #2561]\t@ 0xa01\n+./src/surface.c:175 (discriminator 1)\n+\tmcrge\t4, 5, pc, cr7, cr15, {1}\t@ \n+./src/surface.c:177\n+\tbge\tfe43fd30 <__cxa_finalize@plt+0xfe43ed20>\n+\tblvc\tff9ffff8 <__cxa_finalize@plt+0xff9fefe8>\n+\tblvc\t27fdf8 <__cxa_finalize@plt+0x27ede8>\n+\tblvc\t37fdbc <__cxa_finalize@plt+0x37edac>\n+\tblpl\tff200100 <__cxa_finalize@plt+0xff1ff0f0>\n+limit_y_1():\n+./src/surface.c:123\n+\tbpl\tff3000f8 <__cxa_finalize@plt+0xff2ff0e8>\n+\tblx\t4400f0 <__cxa_finalize@plt+0x43f0e0>\n+\tmovwcs\tsp, #2211\t@ 0x8a3\n+\tbeq\t123fff4 <__cxa_finalize@plt+0x123efe4>\n+limit_y_2():\n+./src/surface.c:135\n+\tbvc\t12400f8 <__cxa_finalize@plt+0x123f0e8>\n+limit_y_1():\n+./src/surface.c:135\n+\tbfi\tr4, sl, (invalid: 12:10)\n+idx_y():\n+./src/surface.c:118\n+\tcdp\t8, 11, cr6, cr7, cr11, {1}\n+surface_draw_triangle():\n+./src/surface.c:187\n+\tvldr\ts1, [r5, #768]\t@ 0x300\n+\tblcc\t82d5c <__cxa_finalize@plt+0x81d4c>\n+idx_y():\n+./src/surface.c:118\n+\tbcc\tfe43fd68 <__cxa_finalize@plt+0xfe43ed58>\n+\tbvs\t17fb84 <__cxa_finalize@plt+0x17eb74>\n+\tblx\t1a00034 <__cxa_finalize@plt+0x19ff024>\n+surface_draw_triangle():\n+./src/surface.c:187\n+\tbvc\t1bfccc <__cxa_finalize@plt+0x1becbc>\n+\tbvs\t13fc90 <__cxa_finalize@plt+0x13ec80>\n+\tbge\tffa0003c <__cxa_finalize@plt+0xff9ff02c>\n+\tblmi\t27fe0c <__cxa_finalize@plt+0x27edfc>\n+\tbleq\t13fe28 <__cxa_finalize@plt+0x13ee18>\n+\tblmi\tbfba0 <__cxa_finalize@plt+0xbeb90>\n+\tbleq\tff04004c <__cxa_finalize@plt+0xff03f03c>\n+idx_y():\n+./src/surface.c:118\n+\tbeq\tbfff74 <__cxa_finalize@plt+0xbfef64>\n+\tstcl\t7, cr15, [r2], #-1008\t@ 0xfffffc10\n+\tbvc\tff040170 <__cxa_finalize@plt+0xff03f160>\n+surface_draw_triangle():\n+./src/surface.c:188\n+\tbvc\t3fbf4 <__cxa_finalize@plt+0x3ebe4>\n+\tblmi\tbfbf8 <__cxa_finalize@plt+0xbebe8>\n+idx_y():\n+./src/surface.c:118 (discriminator 1)\n+\tbvc\tffa00168 <__cxa_finalize@plt+0xff9ff158>\n+\tblx\tffa0005c <__cxa_finalize@plt+0xff9ff04c>\n+\tblx\t440154 <__cxa_finalize@plt+0x43f144>\n+\tcdp\t15, 15, cr11, cr0, cr8, {2}\n+\tvcmp.f32\ts15, #0.0\n+./src/surface.c:118 (discriminator 3)\n+\tvsqrt.f32\ts15, s0\n+\tsvclt\t0x0048fa10\n+\tbvc\t1b00164 <__cxa_finalize@plt+0x1aff154>\n+\tbvc\tffa0019c <__cxa_finalize@plt+0xff9ff18c>\n+\tbmi\tfe43fe08 <__cxa_finalize@plt+0xfe43edf8>\n+surface_draw_triangle():\n+./src/surface.c:188\n+\tbvc\tff20008c <__cxa_finalize@plt+0xff1ff07c>\n+\tblvc\t113fe90 <__cxa_finalize@plt+0x113ee80>\n+\tblvc\tff200094 <__cxa_finalize@plt+0xff1ff084>\n+idx_y():\n+./src/surface.c:118\n+\tbeq\tbfffd8 <__cxa_finalize@plt+0xbfefc8>\n+\tldc\t7, cr15, [lr], #-1008\t@ 0xfffffc10\n+\tbeq\tff0400b8 <__cxa_finalize@plt+0xff03f0a8>\n+surface_draw_triangle():\n+./src/surface.c:190 (discriminator 1)\n+\tbvs\t13fd3c <__cxa_finalize@plt+0x13ed2c>\n+\tbvs\t17fc40 <__cxa_finalize@plt+0x17ec30>\n+idx_y():\n+./src/surface.c:118 (discriminator 1)\n+\tbeq\tff0400b0 <__cxa_finalize@plt+0xff03f0a0>\n+\tbeq\tff4000a4 <__cxa_finalize@plt+0xff3ff094>\n+\tblx\t44019c <__cxa_finalize@plt+0x43f18c>\n+\tmrc\t15, 5, fp, cr0, cr4, {6}\n+\tvmov.f32\ts10, s0\n+\tvcmp.f32\ts10, #0.0\n+./src/surface.c:118 (discriminator 3)\n+\tvsqrt.f32\ts11, s0\n+\tsvclt\t0x0048fa10\n+\tbpl\t1b000b0 <__cxa_finalize@plt+0x1aff0a0>\n+\tbvc\tff1801e8 <__cxa_finalize@plt+0xff17f1d8>\n+\tbcs\tfe43fe54 <__cxa_finalize@plt+0xfe43ee44>\n+surface_draw_triangle():\n+./src/surface.c:190 (discriminator 1)\n+\tblle\tfe115084 <__cxa_finalize@plt+0xfe114074>\n+triangle_depth():\n+./src/surface.c:150\n+\tbpl\t7fd74 <__cxa_finalize@plt+0x7ed64>\n+\tandge\tpc, r4, r8, lsl #22\n+\tsmlatbcs\tip, fp, r9, r6\n+\tbvc\t1ffd80 <__cxa_finalize@plt+0x1fed70>\n+\tcdp\t2, 7, cr3, cr5, cr1, {0}\n+\tblx\t5b142 <__cxa_finalize@plt+0x5a132>\n+\tcdp\t3, 6, cr3, cr5, cr0, {0}\n+\tvmla.f32\ts10, s15, s15\n+./src/surface.c:148\n+\t\t\t@ instruction: 0xeef04a90\n+./src/surface.c:150\n+\tvldr\ts8, [r3, #404]\t@ 0x194\n+surface_draw_triangle():\n+./src/surface.c:196\n+\tstrcc\tr5, [r1], #-2560\t@ 0xfffff600\n+triangle_depth():\n+./src/surface.c:148\n+\tblvc\tffa0010c <__cxa_finalize@plt+0xff9ff0fc>\n+\tblvc\t27ff0c <__cxa_finalize@plt+0x27eefc>\n+\tblvc\t2bfed0 <__cxa_finalize@plt+0x2beec0>\n+\tblvc\tff200114 <__cxa_finalize@plt+0xff1ff104>\n+./src/surface.c:150\n+\tbvc\t123ff18 <__cxa_finalize@plt+0x123ef08>\n+\tbmi\tb3ff5c <__cxa_finalize@plt+0xb3ef4c>\n+\tbvc\tfe340154 <__cxa_finalize@plt+0xfe33f144>\n+\tbvc\tffa00028 <__cxa_finalize@plt+0xff9ff018>\n+surface_draw_triangle():\n+./src/surface.c:196\n+\tbpl\tffa0011c <__cxa_finalize@plt+0xff9ff10c>\n+\tblx\t440214 <__cxa_finalize@plt+0x43f204>\n+./src/surface.c:199\n+\ttstvc\tlr, r2, asr #31\n+./src/surface.c:200\n+\tstcl\t0, cr6, [r3, #636]\t@ 0x27c\n+./src/surface.c:198\n+\tstrbmi\tr7, [fp], #-2560\t@ 0xfffff600\n+./src/surface.c:190 (discriminator 1)\n+\t\t\t@ instruction: 0xd1dc4294\n+\tmovwcs\tlr, #1873\t@ 0x751\n+limit_y_1():\n+./src/surface.c:190 (discriminator 1)\n+\tbeq\t1bc0128 <__cxa_finalize@plt+0x1bbf118>\n+limit_y_2():\n+./src/surface.c:137\n+\tbvc\t1bc022c <__cxa_finalize@plt+0x1bbf21c>\n+limit_y_1():\n+./src/surface.c:137\n+\t\t\t@ instruction: 0xe730461a\n+./src/surface.c:128\n+\tbvc\t124004c <__cxa_finalize@plt+0x123f03c>\n+\tbvc\tff2fff50 <__cxa_finalize@plt+0xff2fef40>\n+\tbvc\tfe180018 <__cxa_finalize@plt+0xfe17f008>\n+\tbeq\tfe20009c <__cxa_finalize@plt+0xfe1ff08c>\n+\tbeq\t23ff44 <__cxa_finalize@plt+0x23ef34>\n+\t\t\t@ instruction: 0xf7fce711\n+surface_draw_triangle():\n+./src/surface.c:204\n+\tsvclt\t0x0000ec60\n+\tandeq\tr0, r0, r0\n+\tandeq\tfp, r1, sl, lsr #25\n \tandeq\tr0, r0, r4, lsl r1\n-get_current_useconds():\n-./src/viewer.c:306\n-\tvst3.8\t{d27,d29,d31}, [pc], r0\n-\tbl\tfeb5ba00 <__cxa_finalize@plt+0xfeb5a9f0>\n-\t\t\t@ instruction: 0xf8cc0c0c\n-\tbmi\t548788 <__cxa_finalize@plt+0x547778>\n-\tblmi\t570a28 <__cxa_finalize@plt+0x56fa18>\n-./src/viewer.c:310\n-\tldrbtmi\tr2, [sl], #-256\t@ 0xffffff00\n-\tldmpl\tr3, {r3, r5, r6, r9, sl, lr}^\n-./src/viewer.c:306\n-\tmovwls\tr6, #22555\t@ 0x581b\n+\tandeq\tfp, r1, lr, ror #24\n+surface_print():\n+./src/surface.c:207\n+\tsvcmi\t0x00f0e92d\n+\tstcpl\t4, cr15, [r0], {79}\t@ 0x4f\n+\t\t\t@ instruction: 0x0c0cebad\n+\tsvceq\t0x00b8f8cc\n+\taddlt\tr4, r9, r0, asr #20\n+\tldrbtmi\tr4, [sl], #-2880\t@ 0xfffff4c0\n+\tldrdls\tpc, [r0, -pc]\n+\tldmpl\tr3, {r0, r3, r4, r5, r6, r7, sl, lr}^\n+\tmovwls\tr6, #30747\t@ 0x781b\n \tmovweq\tpc, #79\t@ 0x4f\t@ \n-./src/viewer.c:310\n-\tb\tffac2810 <__cxa_finalize@plt+0xffac1800>\n-./src/viewer.c:311\n-\tvadd.i8\td25, d4, d0\n-\tvqdmlal.s\tq9, d0, d0[0]\n-\tbls\t85468 <__cxa_finalize@plt+0x84458>\n-\tsmlatbeq\tr3, r0, fp, pc\t@ \n-./src/viewer.c:312\n-\tbls\t4aa34 <__cxa_finalize@plt+0x49a24>\n-./src/viewer.c:311\n-\ttstpne\tr2, r3, lsl #22\t@ p-variant is OBSOLETE\n-./src/viewer.c:312\n-\tbmi\t2ab448 <__cxa_finalize@plt+0x2aa438>\n-\ttsteq\tr3, r1, asr #22\n-./src/viewer.c:315\n+./src/surface.c:208 (discriminator 1)\n+\tblcs\t1e6f4 <__cxa_finalize@plt+0x1d6e4>\n+\tblmi\tf38858 <__cxa_finalize@plt+0xf37848>\n+./src/surface.c:222\n+\tblpl\tff501fe0 <__cxa_finalize@plt+0xff500fd0>\n+\tbleq\t18c11d8 <__cxa_finalize@plt+0x18c01c8>\n+\tstrmi\tr4, [r0], sp, lsl #12\n+./src/surface.c:208\n+\tldrbtmi\tr2, [fp], #-1792\t@ 0xfffff900\n+./src/surface.c:225\n+\tstmdavs\tfp!, {r0, r1, r8, r9, ip, pc}^\n+./src/surface.c:210\n+\t\t\t@ instruction: 0xf04f2400\n+./src/surface.c:212\n+\tstmdblt\tr3, {r2, r3, r9, fp}^\n+./src/surface.c:210 (discriminator 1)\n+\tstrbmi\tlr, [r1], -fp, asr #32\n+./src/surface.c:229\n+\t\t\t@ instruction: 0xf7fc4630\n+\tstmdavs\tfp!, {r1, r4, r5, sl, fp, sp, lr, pc}^\n+./src/surface.c:210 (discriminator 2)\n+\tadcmi\tr3, r3, #16777216\t@ 0x1000000\n+./src/surface.c:210 (discriminator 1)\n+\tblx\t1fac0a <__cxa_finalize@plt+0x1f9bfa>\n+./src/surface.c:212\n+\tstmibvs\tsl!, {r0, r1, r8, r9, lr}\n+\tmovwcs\tpc, #15114\t@ 0x3b0a\t@ \n+./src/surface.c:213\n+\tldmdbvc\tlr, {r3, r4, r7, fp, sp, lr}\n+\tstmdacs\tr0, {r0, ip, sp}\n+./src/surface.c:215\n+\tblmi\tb3bec4 <__cxa_finalize@plt+0xb3aeb4>\n+./src/surface.c:215 (discriminator 1)\n+\tandcc\tpc, r3, r9, asr r8\t@ \n+\taddmi\tr6, r3, #1769472\t@ 0x1b0000\n+\tblmi\tabbeb8 <__cxa_finalize@plt+0xabaea8>\n+./src/surface.c:215 (discriminator 2)\n+\tandcc\tpc, r3, r9, asr r8\t@ \n+\taddmi\tr6, r3, #1769472\t@ 0x1b0000\n+\tbge\t1bbeac <__cxa_finalize@plt+0x1bae9c>\n+./src/surface.c:219\n+\ttstpeq\tsl, #1073741827\t@ p-variant is OBSOLETE\t@ 0x40000003\n+\ttstpeq\tr6, sp, lsl #2\t@ p-variant is OBSOLETE\n+\t\t\t@ instruction: 0xf7fcb200\n+\t\t\t@ instruction: 0xf9bdec16\n+./src/surface.c:222\n+\t\t\t@ instruction: 0xf9bd1018\n+./src/surface.c:221\n+\t\t\t@ instruction: 0x4640c016\n+./src/surface.c:225\n+\tstrcc\tr9, [r1], #-1537\t@ 0xfffff9ff\n+./src/surface.c:223\n+\t\t\t@ instruction: 0x601af9bd\n+./src/surface.c:222\n+\tsmlabtcs\tr1, r1, fp, lr\n+./src/surface.c:221\n+\t\t\t@ instruction: 0x2c0cebcc\n+./src/surface.c:222\n+\tbl\tff18a680 <__cxa_finalize@plt+0xff189670>\n+./src/surface.c:223\n+\tblx\tfe2cdf72 <__cxa_finalize@plt+0xfe2ccf62>\n+./src/surface.c:222\n+\tblx\tfe2ccb62 <__cxa_finalize@plt+0xfe2cbb52>\n+./src/surface.c:221\n+\tb\t13fcf90 <__cxa_finalize@plt+0x13fbf80>\n+\tbl\tff0e3b14 <__cxa_finalize@plt+0xff0e2b04>\n+./src/surface.c:225\n+\tstmdbls\tr3, {r0, r5, r7, r8, r9, ip}\n+\tadcne\tlr, r2, #204, 22\t@ 0x33000\n+./src/surface.c:223\n+\t\t\t@ instruction: 0xec06fb8b\n+\tbl\tff18a74c <__cxa_finalize@plt+0xff18973c>\n+\tstrls\tr1, [r0], -ip, lsr #13\n+./src/surface.c:225\n+\tbl\tff54276c <__cxa_finalize@plt+0xff54175c>\n+./src/surface.c:210 (discriminator 1)\n+\tadcmi\tr6, r3, #7012352\t@ 0x6b0000\n+\t\t\t@ instruction: 0x4641d8bb\n+./src/surface.c:232\n+\t\t\t@ instruction: 0xf7fc200a\n+\tstmdavs\tfp!, {r1, r2, r5, r6, r7, r8, r9, fp, sp, lr, pc}\n+./src/surface.c:208 (discriminator 2)\n+\tadcsmi\tr3, fp, #262144\t@ 0x40000\n+./src/surface.c:208 (discriminator 1)\n+\tbmi\t37aa28 <__cxa_finalize@plt+0x379a18>\n+./src/surface.c:234\n \tldrbtmi\tr4, [sl], #-2823\t@ 0xfffff4f9\n \tldmdavs\tsl, {r0, r1, r4, r6, r7, fp, ip, lr}\n-\tsubsmi\tr9, sl, r5, lsl #22\n+\tsubsmi\tr9, sl, r7, lsl #22\n \tmovweq\tpc, #79\t@ 0x4f\t@ \n-\tandlt\tsp, r7, r2, lsl #2\n-\tblx\t1429ce <__cxa_finalize@plt+0x1419be>\n-\tbl\t1dc284c <__cxa_finalize@plt+0x1dc183c>\n-\tandeq\tfp, r1, r6, asr #13\n+\tandlt\tsp, r9, r2, lsl #2\n+\tsvchi\t0x00f0e8bd\n+\tbl\tff3427a0 <__cxa_finalize@plt+0xff341790>\n+\tandeq\tfp, r1, r2, lsr #16\n \tandeq\tr0, r0, r4, lsl r1\n-\tmuleq\tr1, r2, r6\n-init_file_extension():\n-./src/viewer.c:518\n-\tvst3.\t{d27,d29,d31}, [pc :256], r8\n-\tbl\tfeb5ba70 <__cxa_finalize@plt+0xfeb5aa60>\n-\t\t\t@ instruction: 0xf8cc0c0c\n-\tstrmi\tr0, [r5], -r8, ror #31\n-\tmovwcs\tr4, #1550\t@ 0x60e\n-./src/viewer.c:522\n-\tldrtmi\tr2, [r0], -lr, lsr #2\n-./src/viewer.c:520\n-\t\t\t@ instruction: 0x712b602b\n-./src/viewer.c:522\n-\tb\tff0c2878 <__cxa_finalize@plt+0xff0c1868>\n-./src/viewer.c:523\n-\tsvclt\t0x00184286\n-\tandle\tr2, lr, r0, lsl #16\n-\tstccc\t6, cr4, [r1, #-16]\n-\t\t\t@ instruction: 0xf8141d07\n-./src/viewer.c:529\n-\tcmplt\tr6, r1, lsl #30\n-./src/viewer.c:531 (discriminator 2)\n-\tbl\t1c2890 <__cxa_finalize@plt+0x1c1880>\n-./src/viewer.c:531 (discriminator 1)\n-\tadcsmi\tr6, ip, #196608\t@ 0x30000\n-./src/viewer.c:531 (discriminator 9)\n-\teorcc\tpc, r6, r3, asr r8\t@ \n-\tsvccc\t0x0001f805\n-./src/viewer.c:527 (discriminator 1)\n-\tldcllt\t1, cr13, [r8, #972]!\t@ 0x3cc\n+\tandeq\tfp, r1, ip, lsl r8\n+\tandeq\tr1, r0, sl, lsr #11\n+\tandeq\tr0, r0, r0, lsr #2\n+\tandeq\tr0, r0, r0, lsl #2\n+\tandeq\tfp, r1, lr, lsr r7\n+surface_printw():\n+./src/surface.c:237\n+\tsvcmi\t0x00f0e92d\n+\tstcpl\t4, cr15, [r0], {79}\t@ 0x4f\n+\t\t\t@ instruction: 0x0c0cebad\n+\tsvceq\t0x00d0f8cc\n+./src/surface.c:238 (discriminator 1)\n+\taddlt\tr6, r3, r3, lsl #16\n+./src/surface.c:237\n+\tldrbtmi\tr4, [pc], #-3885\t@ 47e4 <__cxa_finalize@plt+0x37d4>\n+./src/surface.c:238 (discriminator 1)\n+\tsubsle\tr2, r4, r0, lsl #22\n+\t\t\t@ instruction: 0xf04f4b2c\n+./src/surface.c:238\n+\tbmi\tb06ff0 <__cxa_finalize@plt+0xb05fe0>\n+./src/surface.c:249\n+\t\t\t@ instruction: 0xf8df4605\n+./src/surface.c:254\n+\t\t\t@ instruction: 0x46d390b0\n+./src/surface.c:249\n+\tandls\tr4, r1, #2046820352\t@ 0x7a000000\n+\tldrbtmi\tr5, [r9], #2299\t@ 0x8fb\n+./src/surface.c:254\n+\tblls\t29404 <__cxa_finalize@plt+0x283f4>\n+./src/surface.c:240\n+\tldrbmi\tr2, [r9], -r0, lsl #4\n+./src/surface.c:241\n+\t\t\t@ instruction: 0xf04f2400\n+./src/surface.c:243\n+\tldmdavs\tr8, {r2, r3, fp}\n+./src/surface.c:240\n+\tbl\tfe0c2804 <__cxa_finalize@plt+0xfe0c17f4>\n+./src/surface.c:241 (discriminator 1)\n+\tldmdblt\tr2!, {r1, r3, r5, r6, fp, sp, lr}\n+\t\t\t@ instruction: 0xf7fce036\n+./src/surface.c:254\n+\tstmdavs\tsl!, {r4, r7, r9, fp, sp, lr, pc}^\n+./src/surface.c:241 (discriminator 2)\n+\tadcmi\tr3, r2, #16777216\t@ 0x1000000\n+./src/surface.c:241 (discriminator 1)\n+\tblx\t2facea <__cxa_finalize@plt+0x2f9cda>\n+./src/surface.c:243\n+\tstmibvs\tfp!, {r1, r9, lr}\n+./src/surface.c:246 (discriminator 1)\n+\tldrsbtgt\tpc, [r8], #-143\t@ 0xffffff71\t@ \n+./src/surface.c:254\n+\tblx\t216156 <__cxa_finalize@plt+0x215146>\n+./src/surface.c:243\n+\tldmvs\tsl, {r1, r8, r9, ip, sp}\n+./src/surface.c:249\n+\tandcc\tr7, r1, #491520\t@ 0x78000\n+./src/surface.c:254\n+\tbcs\t16104 <__cxa_finalize@plt+0x150f4>\n+./src/surface.c:246\n+\t\t\t@ instruction: 0xf857ddeb\n+./src/surface.c:246 (discriminator 1)\n+\t\t\t@ instruction: 0xf8df300c\n+./src/surface.c:246 (discriminator 2)\n+\tldmdavs\tfp, {r2, r5, r6, sp, lr, pc}\n+./src/surface.c:246 (discriminator 1)\n+\tstclle\t2, cr4, [r4, #588]!\t@ 0x24c\n+./src/surface.c:246 (discriminator 2)\n+\tandcc\tpc, lr, r7, asr r8\t@ \n+\taddsmi\tr6, r3, #1769472\t@ 0x1b0000\n+\tandseq\tsp, r3, #14272\t@ 0x37c0\n+./src/surface.c:248\n+\tstrcc\tr9, [r1], #-2560\t@ 0xfffff600\n+\tblx\tfe1030e0 <__cxa_finalize@plt+0xfe1020d0>\n+\t\t\t@ instruction: 0x46516810\n+\t\t\t@ instruction: 0xf7fc2200\n+\t\t\t@ instruction: 0x4631eb98\n+./src/surface.c:249\n+\t\t\t@ instruction: 0xf7fc9801\n+\tblls\t3f208 <__cxa_finalize@plt+0x3e1f8>\n+./src/surface.c:250\n+\tldrbmi\tr2, [r1], -r0, lsl #4\n+\t\t\t@ instruction: 0xf7fc6818\n+\tstmdavs\tsl!, {r2, r3, r4, r5, r6, r9, fp, sp, lr, pc}^\n+./src/surface.c:241 (discriminator 1)\n+\tstmiale\tlr, {r1, r5, r7, r9, lr}^\n+./src/surface.c:238 (discriminator 1)\n+\t\t\t@ instruction: 0xf10b682b\n+./src/surface.c:238 (discriminator 2)\n+\tldrbmi\tr0, [fp, #-2817]\t@ 0xfffff4ff\n+./src/surface.c:238 (discriminator 1)\n+\t\t\t@ instruction: 0xb003d8b7\n+./src/surface.c:258\n+\tsvchi\t0x00f0e8bd\n+\tstrdeq\tfp, [r1], -r2\n+\tandeq\tr0, r0, r0, lsl r1\n+\tandeq\tr1, r0, r4, lsr #9\n+\tmuleq\tr0, lr, r4\n+\tandeq\tr0, r0, r0, lsr #2\n+\tandeq\tr0, r0, r0, lsl #2\n \tandeq\tr0, r0, r0\n __aeabi_idiv():\n \t\t\t@ instruction: 0xf0002900\n __divsi3():\n \tb\tfe024db4 <__cxa_finalize@plt+0xfe023da4>\n \tsvclt\t0x00480c01\n \tcdpne\t2, 4, cr4, cr10, cr9, {2}\n"}, {"source1": "readelf --wide --decompress --hex-dump=.rodata {}", "source2": "readelf --wide --decompress --hex-dump=.rodata {}", "unified_diff": "@@ -5,227 +5,227 @@\n 0x00004f48 41000000 36000000 41000000 03000000 A...6...A.......\n 0x00004f58 41000000 06000000 41000000 15000000 A.......A.......\n 0x00004f68 41000000 0f000000 41000000 0e000000 A.......A.......\n 0x00004f78 41000000 26000000 41000000 13000000 A...&...A.......\n 0x00004f88 41000000 29000000 41000000 02000000 A...)...A.......\n 0x00004f98 41000000 19000000 41000000 0a000000 A.......A.......\n 0x00004fa8 41000000 0b000000 41000000 00000000 A.......A.......\n- 0x00004fb8 00000000 7372632f 73757266 6163652e ....src/surface.\n- 0x00004fc8 63000000 73757266 6163652d 3e706978 c...surface->pix\n- 0x00004fd8 656c7300 4552524f 523a204d 656d6f72 els.ERROR: Memor\n- 0x00004fe8 7920616c 6c6f6361 74696f6e 20666169 y allocation fai\n- 0x00004ff8 6c757265 2e0a0000 73757266 61636500 lure....surface.\n- 0x00005008 1b5b3338 3b323b25 643b2564 3b25646d .[38;2;%d;%d;%dm\n- 0x00005018 25631b5b 306d0000 25630000 7372632f %c.[0m..%c..src/\n- 0x00005028 6d6f6465 6c2e6300 2a64656c 696d2021 model.c.*delim !\n- 0x00005038 3d20275c 30270000 5741524e 3a20496e = '\\0'..WARN: In\n- 0x00005048 76616c69 64207665 72746578 20696e64 valid vertex ind\n- 0x00005058 65782025 642e0a00 20000000 2f000000 ex %d... .../...\n- 0x00005068 30203c3d 20617869 73312026 26206178 0 <= axis1 && ax\n- 0x00005078 69733120 3c3d2032 00000000 30203c3d is1 <= 2....0 <=\n- 0x00005088 20617869 73322026 26206178 69733220 axis2 && axis2 \n- 0x00005098 3c3d2032 00000000 30203c3d 20617869 <= 2....0 <= axi\n- 0x000050a8 73332026 26206178 69733320 3c3d2032 s3 && axis3 <= 2\n- 0x000050b8 00000000 72000000 4552524f 523a2066 ....r...ERROR: f\n- 0x000050c8 61696c65 6420746f 206c6f61 64206669 ailed to load fi\n- 0x000050d8 6c652022 2573222e 0a000000 4552524f le \"%s\".....ERRO\n- 0x000050e8 523a2069 6e76616c 69642022 76222069 R: invalid \"v\" i\n- 0x000050f8 6e737472 75637469 6f6e2e0a 00000000 nstruction......\n- 0x00005108 4552524f 523a2069 6e76616c 69642022 ERROR: invalid \"\n- 0x00005118 66222069 6e737472 75637469 6f6e2e0a f\" instruction..\n- 0x00005128 00000000 6d746c6c 69620000 4552524f ....mtllib..ERRO\n- 0x00005138 523a204d 656d6f72 7920616c 6c6f6361 R: Memory alloca\n- 0x00005148 74696f6e 20666169 6c757265 20666f72 tion failure for\n- 0x00005158 204d544c 2066696c 65206e61 6d652e0a MTL file name..\n- 0x00005168 00000000 4e4f5445 3a205265 6164696e ....NOTE: Readin\n- 0x00005178 67202225 73222e0a 00000000 5741524e g \"%s\"......WARN\n- 0x00005188 3a206661 696c6564 20746f20 6c6f6164 : failed to load\n- 0x00005198 2066696c 65202225 73222e0a 00000000 file \"%s\"......\n- 0x000051a8 6e65776d 746c0000 4552524f 523a204d newmtl..ERROR: M\n- 0x000051b8 61746572 69616c20 6e616d65 20746f6f aterial name too\n- 0x000051c8 206c6f6e 672e0a00 5741524e 3a204578 long...WARN: Ex\n- 0x000051d8 70656374 6564206e 65776d74 6c206265 pected newmtl be\n- 0x000051e8 666f7265 20222573 2220696e 73747275 fore \"%s\" instru\n- 0x000051f8 6374696f 6e2e0a00 5741524e 3a20696e ction...WARN: in\n- 0x00005208 76616c69 64202225 73222069 6e737472 valid \"%s\" instr\n- 0x00005218 75637469 6f6e2e0a 00000000 7573656d uction......usem\n- 0x00005228 746c0000 72620000 736f6c69 64000000 tl..rb..solid...\n- 0x00005238 66616365 74000000 76657274 65780000 facet...vertex..\n- 0x00005248 4552524f 523a2069 6e76616c 69642022 ERROR: invalid \"\n- 0x00005258 76657274 65782220 696e7374 72756374 vertex\" instruct\n- 0x00005268 696f6e2e 0a000000 4552524f 523a2046 ion.....ERROR: F\n- 0x00005278 61696c65 6420746f 20726561 64206661 ailed to read fa\n- 0x00005288 63657420 636f756e 742e0a00 4552524f cet count...ERRO\n- 0x00005298 523a2046 61696c65 6420746f 20726561 R: Failed to rea\n- 0x000052a8 64206661 63657420 64617461 2e0a0000 d facet data....\n- 0x000052b8 5741524e 3a20696d 706f7274 65642066 WARN: imported f\n- 0x000052c8 61636574 20636f75 6e742064 6f657320 acet count does \n- 0x000052d8 6e6f7420 6d617463 68206578 70656374 not match expect\n- 0x000052e8 65642066 61636574 20636f75 6e742e0a ed facet count..\n- 0x000052f8 00000000 7372632f 74726961 6e67756c ....src/triangul\n- 0x00005308 6172697a 6174696f 6e2e6300 6e203e3d arization.c.n >=\n- 0x00005318 20330000 6e32203d 3d206e20 2d203100 3..n2 == n - 1.\n- 0x00005328 6e31202b 206e3220 3d3d206e 202b2032 n1 + n2 == n + 2\n- 0x00005338 00000000 55736167 653a2025 73205b4f ....Usage: %s [O\n- 0x00005348 5054494f 4e2e2e2e 5d20494e 5055545f PTION...] INPUT_\n- 0x00005358 46494c45 0a000000 616e204f 424a2033 FILE....an OBJ 3\n- 0x00005368 44206d6f 64656c20 666f726d 61742076 D model format v\n- 0x00005378 69657765 7220666f 72207468 65207465 iewer for the te\n- 0x00005388 726d696e 616c0000 33642d61 73636969 rminal..3d-ascii\n- 0x00005398 2d766965 77657200 2573202d 2d202573 -viewer.%s -- %s\n- 0x000053a8 0a000000 20202d77 203c7369 7a653e20 .... -w \n- 0x000053b8 20202020 20202020 4f757470 75742077 Output w\n- 0x000053c8 69647468 20696e20 63686172 61637465 idth in characte\n- 0x000053d8 72730000 20202d68 203c7369 7a653e20 rs.. -h \n- 0x000053e8 20202020 20202020 4f757470 75742068 Output h\n- 0x000053f8 65696768 7420696e 20636861 72616374 eight in charact\n- 0x00005408 65727300 20202d64 203c7365 636f6e64 ers. -d Stop the\n- 0x00005428 2070726f 6772616d 20616674 65722074 program after t\n- 0x00005438 68697320 6d616e79 20736563 6f6e6473 his many seconds\n- 0x00005448 2e000000 20202d66 203c6672 616d6573 .... -f Frames p\n- 0x00005468 65722073 65636f6e 642e0000 20202d61 er second... -a\n- 0x00005478 203c7261 74696f3e 20202020 20202020 \n- 0x00005488 44697370 6c617920 61737375 6d696e67 Display assuming\n- 0x00005498 20746869 73206865 69676874 2f776964 this height/wid\n- 0x000054a8 74682072 6174696f 20666f72 20746572 th ratio for ter\n- 0x000054b8 6d696e61 6c000000 20202020 20202020 minal... \n- 0x000054c8 20202020 20202020 20202020 63686172 char\n- 0x000054d8 61637465 72732e00 20202d63 203c6368 acters.. -c Prov\n- 0x000054f8 69646520 616c7465 726e6174 65206c75 ide alternate lu\n- 0x00005508 6d696e65 7363656e 63652063 68617261 minescence chara\n- 0x00005518 63746572 73202866 726f6d20 6c657373 cters (from less\n- 0x00005528 20746f00 20202020 20202020 20202020 to. \n- 0x00005538 20202020 20202020 6d6f7265 206c6967 more lig\n- 0x00005548 6874292e 00000000 20202d73 20202020 ht)..... -s \n- 0x00005558 20202020 20202020 20202020 53747265 Stre\n- 0x00005568 74636820 74686520 6d6f6465 6c2c2072 tch the model, r\n- 0x00005578 65676172 646c6573 73206f66 20746865 egardless of the\n- 0x00005588 20686569 6768742f 77696474 68207261 height/width ra\n- 0x00005598 74696f2e 00000000 20202020 20202020 tio..... \n- 0x000055a8 20202020 20202020 20202020 666f7220 for \n- 0x000055b8 7465726d 696e616c 20636861 72616374 terminal charact\n- 0x000055c8 6572732e 00000000 20202d74 20202020 ers..... -t \n- 0x000055d8 20202020 20202020 20202020 416c6c6f Allo\n- 0x000055e8 77207468 6520616e 696d6174 696f6e20 w the animation \n- 0x000055f8 746f2072 65616368 206d6178 696d756d to reach maximum\n- 0x00005608 20656c65 76617469 6f6e2e00 20202d6c elevation.. -l\n- 0x00005618 20202020 20202020 20202020 20202020 \n- 0x00005628 446f6e27 7420726f 74617465 20746865 Don't rotate the\n- 0x00005638 206c6967 68742077 69746820 74686520 light with the \n- 0x00005648 6d6f6465 6c2e0000 20202d58 2c202d59 model... -X, -Y\n- 0x00005658 2c202d5a 20202020 20202020 496e7665 , -Z Inve\n- 0x00005668 72742072 65737065 63746976 65206178 rt respective ax\n- 0x00005678 65732e00 20202d58 595a2c20 2d585a59 es.. -XYZ, -XZY\n- 0x00005688 2c202d59 585a2c20 4368616e 6765206d , -YXZ, Change m\n- 0x00005698 6f64656c 206f7269 656e7461 74696f6e odel orientation\n- 0x000056a8 2e000000 20202d59 5a582c20 2d5a5859 .... -YZX, -ZXY\n- 0x000056b8 2c202d5a 59582020 00000000 20202d46 , -ZYX .... -F\n- 0x000056c8 20202020 20202020 20202020 20202020 \n- 0x000056d8 466c6970 20666163 65732e20 00000000 Flip faces. ....\n- 0x000056e8 20202d7a 203c7a6f 6f6d3e20 20202020 -z \n- 0x000056f8 20202020 4368616e 6765207a 6f6f6d20 Change zoom \n- 0x00005708 6c657665 6c202864 65666175 6c743a20 level (default: \n- 0x00005718 31303029 2e000000 20202d2d 636f6c6f 100).... --colo\n- 0x00005728 72202020 20202020 20202020 44697370 r Disp\n- 0x00005738 6c617920 77697468 20636f6c 6f72732e lay with colors.\n- 0x00005748 00000000 20202020 20202020 20202020 .... \n- 0x00005758 20202020 20202020 54686520 4f424a20 The OBJ \n- 0x00005768 666f726d 61742072 656c6965 73206f6e format relies on\n- 0x00005778 20746865 20636f6d 70616e69 6f6e204d the companion M\n- 0x00005788 544c2066 696c6573 2e000000 20202d2d TL files.... --\n- 0x00005798 736e6170 203c617a 3e203c61 6c3e2020 snap \n- 0x000057a8 4f757470 75742061 2073696e 676c6520 Output a single \n- 0x000057b8 736e6170 20746f20 7374646f 75742c20 snap to stdout, \n- 0x000057c8 77697468 20746865 20676976 656e2061 with the given a\n- 0x000057d8 7a696d75 74680000 20202020 20202020 zimuth.. \n- 0x000057e8 20202020 20202020 20202020 616e6420 and \n- 0x000057f8 616c7469 74756465 20616e67 6c65732c altitude angles,\n- 0x00005808 20696e20 64656772 6565732e 00000000 in degrees.....\n- 0x00005818 20202d2d 696e7465 72616374 69766520 --interactive \n- 0x00005828 20202020 4d616e75 616c6c79 20726f74 Manually rot\n- 0x00005838 61746520 74686520 63616d65 72612e00 ate the camera..\n- 0x00005848 20202020 20202020 20202020 20202020 \n- 0x00005858 20202020 436f6e74 726f6c73 3a204152 Controls: AR\n- 0x00005868 524f5720 4b455953 2c20272d 272c2027 ROW KEYS, '-', '\n- 0x00005878 2b270000 20202020 20202020 20202020 +'.. \n- 0x00005888 20202020 20202020 416c742d 636f6e74 Alt-cont\n- 0x00005898 726f6c73 3a20482c 204a2c20 4b2c204c rols: H, J, K, L\n- 0x000058a8 2c20412c 20530000 20202020 20202020 , A, S.. \n- 0x000058b8 20202020 20202020 20202020 51756974 Quit\n- 0x000058c8 3a205120 20202054 6f67676c 65204875 : Q Toggle Hu\n- 0x000058d8 643a2054 00000000 20202d3f 2c202d2d d: T.... -?, --\n- 0x000058e8 68656c70 20202020 20202020 47697665 help Give\n- 0x000058f8 20746869 73206865 6c70206c 69737400 this help list.\n- 0x00005908 2e2c273a 3b212b2a 3d232440 00000000 .,':;!+*=#$@....\n- 0x00005918 54727920 60257320 2d2d6865 6c702720 Try `%s --help' \n- 0x00005928 666f7220 6d6f7265 20696e66 6f726d61 for more informa\n- 0x00005938 74696f6e 2e0a0000 2d2d6865 6c700000 tion....--help..\n- 0x00005948 4552524f 523a2049 6e76616c 69642077 ERROR: Invalid w\n- 0x00005958 69647468 3a202573 0a000000 4552524f idth: %s....ERRO\n- 0x00005968 523a2049 6e76616c 69642068 65696768 R: Invalid heigh\n- 0x00005978 743a2025 730a0000 4552524f 523a2049 t: %s...ERROR: I\n- 0x00005988 6e76616c 69642046 50533a20 25730a00 nvalid FPS: %s..\n- 0x00005998 4552524f 523a2049 6e76616c 69642064 ERROR: Invalid d\n- 0x000059a8 75726174 696f6e3a 2025730a 00000000 uration: %s.....\n- 0x000059b8 4552524f 523a2049 6e76616c 69642061 ERROR: Invalid a\n- 0x000059c8 73706563 742d7261 74696f3a 2025730a spect-ratio: %s.\n- 0x000059d8 00000000 4552524f 523a2041 74206c65 ....ERROR: At le\n- 0x000059e8 61737420 6f6e6520 6c756d69 6e657363 ast one luminesc\n- 0x000059f8 656e6365 20636861 72616374 6572206d ence character m\n- 0x00005a08 75737420 62652070 726f7669 6465642e ust be provided.\n- 0x00005a18 0a000000 2d740000 2d6c0000 2d580000 ....-t..-l..-X..\n- 0x00005a28 2d590000 2d5a0000 2d7a0000 4552524f -Y..-Z..-z..ERRO\n- 0x00005a38 523a2049 6e76616c 6964207a 6f6f6d3a R: Invalid zoom:\n- 0x00005a48 2025730a 00000000 2d58595a 00000000 %s.....-XYZ....\n- 0x00005a58 2d585a59 00000000 2d59585a 00000000 -XZY....-YXZ....\n- 0x00005a68 2d595a58 00000000 2d5a5859 00000000 -YZX....-ZXY....\n- 0x00005a78 2d5a5958 00000000 2d460000 2d2d636f -ZYX....-F..--co\n- 0x00005a88 6c6f7200 2d2d736e 61700000 4552524f lor.--snap..ERRO\n- 0x00005a98 523a2049 6e76616c 69642061 7a696d75 R: Invalid azimu\n- 0x00005aa8 74683a20 25730a00 4552524f 523a2049 th: %s..ERROR: I\n- 0x00005ab8 6e76616c 69642061 6c746974 7564653a nvalid altitude:\n- 0x00005ac8 2025730a 00000000 2d2d696e 74657261 %s.....--intera\n- 0x00005ad8 63746976 65000000 4552524f 523a2049 ctive...ERROR: I\n- 0x00005ae8 6e76616c 6964206f 7074696f 6e3a2025 nvalid option: %\n- 0x00005af8 730a0000 4552524f 523a2049 6e707574 s...ERROR: Input\n- 0x00005b08 2066696c 65206861 73206e6f 20657874 file has no ext\n- 0x00005b18 656e7369 6f6e2e0a 00000000 6f626a00 ension......obj.\n- 0x00005b28 73746c00 5741524e 3a20436f 6c6f7273 stl.WARN: Colors\n- 0x00005b38 20617265 206e6f74 20737570 706f7274 are not support\n- 0x00005b48 65642069 6e205354 4c20666f 726d6174 ed in STL format\n- 0x00005b58 2e0a0000 4552524f 523a2049 6e707574 ....ERROR: Input\n- 0x00005b68 2066696c 65206861 7320756e 73757070 file has unsupp\n- 0x00005b78 6f727465 64206578 74656e73 696f6e2e orted extension.\n- 0x00005b88 0a000000 4552524f 523a2043 6f756c64 ....ERROR: Could\n- 0x00005b98 206e6f74 20726561 64206d6f 64656c20 not read model \n- 0x00005ba8 76657274 65786573 2e0a0000 4552524f vertexes....ERRO\n- 0x00005bb8 523a2043 6f756c64 206e6f74 20726561 R: Could not rea\n- 0x00005bc8 64206d6f 64656c20 66616365 732e0a00 d model faces...\n- 0x00005bd8 4552524f 523a2054 65726d69 6e616c20 ERROR: Terminal \n- 0x00005be8 646f6573 206e6f74 20737570 706f7274 does not support\n- 0x00005bf8 20636f6c 6f72732e 0a000000 4552524f colors.....ERRO\n- 0x00005c08 523a2054 65726d69 6e616c20 646f6573 R: Terminal does\n- 0x00005c18 206e6f74 20737570 706f7274 20636861 not support cha\n- 0x00005c28 6e67696e 6720636f 6c6f7273 2e0a0000 nging colors....\n- 0x00005c38 5741524e 3a205465 726d696e 616c2064 WARN: Terminal d\n- 0x00005c48 6f65736e 27742073 7570706f 72742065 oesn't support e\n- 0x00005c58 6e6f7567 6820636f 6c6f7273 20666f72 nough colors for\n- 0x00005c68 20616c6c 206d6174 65726961 6c732e0a all materials..\n- 0x00005c78 00000000 7a6f3a25 342e3066 00000000 ....zo:%4.0f....\n- 0x00005c88 617a3a20 25332e30 66000000 616c3a20 az: %3.0f...al: \n- 0x00005c98 25332e30 66000000 73757266 6163655f %3.0f...surface_\n- 0x00005ca8 636c6561 72000000 7374725f 63686f70 clear...str_chop\n- 0x00005cb8 00000000 6d6f6465 6c5f6368 616e6765 ....model_change\n- 0x00005cc8 5f6f7269 656e7461 74696f6e 00000000 _orientation....\n- 0x00005cd8 74726961 6e67756c 6172697a 655f7265 triangularize_re\n- 0x00005ce8 63757273 65000000 74726961 6e67756c curse...triangul\n- 0x00005cf8 6172697a 65000000 3e000000 41000000 arize...>...A...\n+ 0x00004fb8 00000000 55736167 653a2025 73205b4f ....Usage: %s [O\n+ 0x00004fc8 5054494f 4e2e2e2e 5d20494e 5055545f PTION...] INPUT_\n+ 0x00004fd8 46494c45 0a000000 616e204f 424a2033 FILE....an OBJ 3\n+ 0x00004fe8 44206d6f 64656c20 666f726d 61742076 D model format v\n+ 0x00004ff8 69657765 7220666f 72207468 65207465 iewer for the te\n+ 0x00005008 726d696e 616c0000 33642d61 73636969 rminal..3d-ascii\n+ 0x00005018 2d766965 77657200 2573202d 2d202573 -viewer.%s -- %s\n+ 0x00005028 0a000000 20202d77 203c7369 7a653e20 .... -w \n+ 0x00005038 20202020 20202020 4f757470 75742077 Output w\n+ 0x00005048 69647468 20696e20 63686172 61637465 idth in characte\n+ 0x00005058 72730000 20202d68 203c7369 7a653e20 rs.. -h \n+ 0x00005068 20202020 20202020 4f757470 75742068 Output h\n+ 0x00005078 65696768 7420696e 20636861 72616374 eight in charact\n+ 0x00005088 65727300 20202d64 203c7365 636f6e64 ers. -d Stop the\n+ 0x000050a8 2070726f 6772616d 20616674 65722074 program after t\n+ 0x000050b8 68697320 6d616e79 20736563 6f6e6473 his many seconds\n+ 0x000050c8 2e000000 20202d66 203c6672 616d6573 .... -f Frames p\n+ 0x000050e8 65722073 65636f6e 642e0000 20202d61 er second... -a\n+ 0x000050f8 203c7261 74696f3e 20202020 20202020 \n+ 0x00005108 44697370 6c617920 61737375 6d696e67 Display assuming\n+ 0x00005118 20746869 73206865 69676874 2f776964 this height/wid\n+ 0x00005128 74682072 6174696f 20666f72 20746572 th ratio for ter\n+ 0x00005138 6d696e61 6c000000 20202020 20202020 minal... \n+ 0x00005148 20202020 20202020 20202020 63686172 char\n+ 0x00005158 61637465 72732e00 20202d63 203c6368 acters.. -c Prov\n+ 0x00005178 69646520 616c7465 726e6174 65206c75 ide alternate lu\n+ 0x00005188 6d696e65 7363656e 63652063 68617261 minescence chara\n+ 0x00005198 63746572 73202866 726f6d20 6c657373 cters (from less\n+ 0x000051a8 20746f00 20202020 20202020 20202020 to. \n+ 0x000051b8 20202020 20202020 6d6f7265 206c6967 more lig\n+ 0x000051c8 6874292e 00000000 20202d73 20202020 ht)..... -s \n+ 0x000051d8 20202020 20202020 20202020 53747265 Stre\n+ 0x000051e8 74636820 74686520 6d6f6465 6c2c2072 tch the model, r\n+ 0x000051f8 65676172 646c6573 73206f66 20746865 egardless of the\n+ 0x00005208 20686569 6768742f 77696474 68207261 height/width ra\n+ 0x00005218 74696f2e 00000000 20202020 20202020 tio..... \n+ 0x00005228 20202020 20202020 20202020 666f7220 for \n+ 0x00005238 7465726d 696e616c 20636861 72616374 terminal charact\n+ 0x00005248 6572732e 00000000 20202d74 20202020 ers..... -t \n+ 0x00005258 20202020 20202020 20202020 416c6c6f Allo\n+ 0x00005268 77207468 6520616e 696d6174 696f6e20 w the animation \n+ 0x00005278 746f2072 65616368 206d6178 696d756d to reach maximum\n+ 0x00005288 20656c65 76617469 6f6e2e00 20202d6c elevation.. -l\n+ 0x00005298 20202020 20202020 20202020 20202020 \n+ 0x000052a8 446f6e27 7420726f 74617465 20746865 Don't rotate the\n+ 0x000052b8 206c6967 68742077 69746820 74686520 light with the \n+ 0x000052c8 6d6f6465 6c2e0000 20202d58 2c202d59 model... -X, -Y\n+ 0x000052d8 2c202d5a 20202020 20202020 496e7665 , -Z Inve\n+ 0x000052e8 72742072 65737065 63746976 65206178 rt respective ax\n+ 0x000052f8 65732e00 20202d58 595a2c20 2d585a59 es.. -XYZ, -XZY\n+ 0x00005308 2c202d59 585a2c20 4368616e 6765206d , -YXZ, Change m\n+ 0x00005318 6f64656c 206f7269 656e7461 74696f6e odel orientation\n+ 0x00005328 2e000000 20202d59 5a582c20 2d5a5859 .... -YZX, -ZXY\n+ 0x00005338 2c202d5a 59582020 00000000 20202d46 , -ZYX .... -F\n+ 0x00005348 20202020 20202020 20202020 20202020 \n+ 0x00005358 466c6970 20666163 65732e20 00000000 Flip faces. ....\n+ 0x00005368 20202d7a 203c7a6f 6f6d3e20 20202020 -z \n+ 0x00005378 20202020 4368616e 6765207a 6f6f6d20 Change zoom \n+ 0x00005388 6c657665 6c202864 65666175 6c743a20 level (default: \n+ 0x00005398 31303029 2e000000 20202d2d 636f6c6f 100).... --colo\n+ 0x000053a8 72202020 20202020 20202020 44697370 r Disp\n+ 0x000053b8 6c617920 77697468 20636f6c 6f72732e lay with colors.\n+ 0x000053c8 00000000 20202020 20202020 20202020 .... \n+ 0x000053d8 20202020 20202020 54686520 4f424a20 The OBJ \n+ 0x000053e8 666f726d 61742072 656c6965 73206f6e format relies on\n+ 0x000053f8 20746865 20636f6d 70616e69 6f6e204d the companion M\n+ 0x00005408 544c2066 696c6573 2e000000 20202d2d TL files.... --\n+ 0x00005418 736e6170 203c617a 3e203c61 6c3e2020 snap \n+ 0x00005428 4f757470 75742061 2073696e 676c6520 Output a single \n+ 0x00005438 736e6170 20746f20 7374646f 75742c20 snap to stdout, \n+ 0x00005448 77697468 20746865 20676976 656e2061 with the given a\n+ 0x00005458 7a696d75 74680000 20202020 20202020 zimuth.. \n+ 0x00005468 20202020 20202020 20202020 616e6420 and \n+ 0x00005478 616c7469 74756465 20616e67 6c65732c altitude angles,\n+ 0x00005488 20696e20 64656772 6565732e 00000000 in degrees.....\n+ 0x00005498 20202d2d 696e7465 72616374 69766520 --interactive \n+ 0x000054a8 20202020 4d616e75 616c6c79 20726f74 Manually rot\n+ 0x000054b8 61746520 74686520 63616d65 72612e00 ate the camera..\n+ 0x000054c8 20202020 20202020 20202020 20202020 \n+ 0x000054d8 20202020 436f6e74 726f6c73 3a204152 Controls: AR\n+ 0x000054e8 524f5720 4b455953 2c20272d 272c2027 ROW KEYS, '-', '\n+ 0x000054f8 2b270000 20202020 20202020 20202020 +'.. \n+ 0x00005508 20202020 20202020 416c742d 636f6e74 Alt-cont\n+ 0x00005518 726f6c73 3a20482c 204a2c20 4b2c204c rols: H, J, K, L\n+ 0x00005528 2c20412c 20530000 20202020 20202020 , A, S.. \n+ 0x00005538 20202020 20202020 20202020 51756974 Quit\n+ 0x00005548 3a205120 20202054 6f67676c 65204875 : Q Toggle Hu\n+ 0x00005558 643a2054 00000000 20202d3f 2c202d2d d: T.... -?, --\n+ 0x00005568 68656c70 20202020 20202020 47697665 help Give\n+ 0x00005578 20746869 73206865 6c70206c 69737400 this help list.\n+ 0x00005588 2e2c273a 3b212b2a 3d232440 00000000 .,':;!+*=#$@....\n+ 0x00005598 54727920 60257320 2d2d6865 6c702720 Try `%s --help' \n+ 0x000055a8 666f7220 6d6f7265 20696e66 6f726d61 for more informa\n+ 0x000055b8 74696f6e 2e0a0000 2d2d6865 6c700000 tion....--help..\n+ 0x000055c8 4552524f 523a2049 6e76616c 69642077 ERROR: Invalid w\n+ 0x000055d8 69647468 3a202573 0a000000 4552524f idth: %s....ERRO\n+ 0x000055e8 523a2049 6e76616c 69642068 65696768 R: Invalid heigh\n+ 0x000055f8 743a2025 730a0000 4552524f 523a2049 t: %s...ERROR: I\n+ 0x00005608 6e76616c 69642046 50533a20 25730a00 nvalid FPS: %s..\n+ 0x00005618 4552524f 523a2049 6e76616c 69642064 ERROR: Invalid d\n+ 0x00005628 75726174 696f6e3a 2025730a 00000000 uration: %s.....\n+ 0x00005638 4552524f 523a2049 6e76616c 69642061 ERROR: Invalid a\n+ 0x00005648 73706563 742d7261 74696f3a 2025730a spect-ratio: %s.\n+ 0x00005658 00000000 4552524f 523a2041 74206c65 ....ERROR: At le\n+ 0x00005668 61737420 6f6e6520 6c756d69 6e657363 ast one luminesc\n+ 0x00005678 656e6365 20636861 72616374 6572206d ence character m\n+ 0x00005688 75737420 62652070 726f7669 6465642e ust be provided.\n+ 0x00005698 0a000000 2d740000 2d6c0000 2d580000 ....-t..-l..-X..\n+ 0x000056a8 2d590000 2d5a0000 2d7a0000 4552524f -Y..-Z..-z..ERRO\n+ 0x000056b8 523a2049 6e76616c 6964207a 6f6f6d3a R: Invalid zoom:\n+ 0x000056c8 2025730a 00000000 2d58595a 00000000 %s.....-XYZ....\n+ 0x000056d8 2d585a59 00000000 2d59585a 00000000 -XZY....-YXZ....\n+ 0x000056e8 2d595a58 00000000 2d5a5859 00000000 -YZX....-ZXY....\n+ 0x000056f8 2d5a5958 00000000 2d460000 2d2d636f -ZYX....-F..--co\n+ 0x00005708 6c6f7200 2d2d736e 61700000 4552524f lor.--snap..ERRO\n+ 0x00005718 523a2049 6e76616c 69642061 7a696d75 R: Invalid azimu\n+ 0x00005728 74683a20 25730a00 4552524f 523a2049 th: %s..ERROR: I\n+ 0x00005738 6e76616c 69642061 6c746974 7564653a nvalid altitude:\n+ 0x00005748 2025730a 00000000 2d2d696e 74657261 %s.....--intera\n+ 0x00005758 63746976 65000000 4552524f 523a2049 ctive...ERROR: I\n+ 0x00005768 6e76616c 6964206f 7074696f 6e3a2025 nvalid option: %\n+ 0x00005778 730a0000 4552524f 523a2049 6e707574 s...ERROR: Input\n+ 0x00005788 2066696c 65206861 73206e6f 20657874 file has no ext\n+ 0x00005798 656e7369 6f6e2e0a 00000000 6f626a00 ension......obj.\n+ 0x000057a8 73746c00 5741524e 3a20436f 6c6f7273 stl.WARN: Colors\n+ 0x000057b8 20617265 206e6f74 20737570 706f7274 are not support\n+ 0x000057c8 65642069 6e205354 4c20666f 726d6174 ed in STL format\n+ 0x000057d8 2e0a0000 4552524f 523a2049 6e707574 ....ERROR: Input\n+ 0x000057e8 2066696c 65206861 7320756e 73757070 file has unsupp\n+ 0x000057f8 6f727465 64206578 74656e73 696f6e2e orted extension.\n+ 0x00005808 0a000000 4552524f 523a2043 6f756c64 ....ERROR: Could\n+ 0x00005818 206e6f74 20726561 64206d6f 64656c20 not read model \n+ 0x00005828 76657274 65786573 2e0a0000 4552524f vertexes....ERRO\n+ 0x00005838 523a2043 6f756c64 206e6f74 20726561 R: Could not rea\n+ 0x00005848 64206d6f 64656c20 66616365 732e0a00 d model faces...\n+ 0x00005858 4552524f 523a2054 65726d69 6e616c20 ERROR: Terminal \n+ 0x00005868 646f6573 206e6f74 20737570 706f7274 does not support\n+ 0x00005878 20636f6c 6f72732e 0a000000 4552524f colors.....ERRO\n+ 0x00005888 523a2054 65726d69 6e616c20 646f6573 R: Terminal does\n+ 0x00005898 206e6f74 20737570 706f7274 20636861 not support cha\n+ 0x000058a8 6e67696e 6720636f 6c6f7273 2e0a0000 nging colors....\n+ 0x000058b8 5741524e 3a205465 726d696e 616c2064 WARN: Terminal d\n+ 0x000058c8 6f65736e 27742073 7570706f 72742065 oesn't support e\n+ 0x000058d8 6e6f7567 6820636f 6c6f7273 20666f72 nough colors for\n+ 0x000058e8 20616c6c 206d6174 65726961 6c732e0a all materials..\n+ 0x000058f8 00000000 7a6f3a25 342e3066 00000000 ....zo:%4.0f....\n+ 0x00005908 617a3a20 25332e30 66000000 616c3a20 az: %3.0f...al: \n+ 0x00005918 25332e30 66000000 7372632f 6d6f6465 %3.0f...src/mode\n+ 0x00005928 6c2e6300 2a64656c 696d2021 3d20275c l.c.*delim != '\\\n+ 0x00005938 30270000 4552524f 523a204d 656d6f72 0'..ERROR: Memor\n+ 0x00005948 7920616c 6c6f6361 74696f6e 20666169 y allocation fai\n+ 0x00005958 6c757265 2e0a0000 5741524e 3a20496e lure....WARN: In\n+ 0x00005968 76616c69 64207665 72746578 20696e64 valid vertex ind\n+ 0x00005978 65782025 642e0a00 20000000 2f000000 ex %d... .../...\n+ 0x00005988 30203c3d 20617869 73312026 26206178 0 <= axis1 && ax\n+ 0x00005998 69733120 3c3d2032 00000000 30203c3d is1 <= 2....0 <=\n+ 0x000059a8 20617869 73322026 26206178 69733220 axis2 && axis2 \n+ 0x000059b8 3c3d2032 00000000 30203c3d 20617869 <= 2....0 <= axi\n+ 0x000059c8 73332026 26206178 69733320 3c3d2032 s3 && axis3 <= 2\n+ 0x000059d8 00000000 72000000 4552524f 523a2066 ....r...ERROR: f\n+ 0x000059e8 61696c65 6420746f 206c6f61 64206669 ailed to load fi\n+ 0x000059f8 6c652022 2573222e 0a000000 4552524f le \"%s\".....ERRO\n+ 0x00005a08 523a2069 6e76616c 69642022 76222069 R: invalid \"v\" i\n+ 0x00005a18 6e737472 75637469 6f6e2e0a 00000000 nstruction......\n+ 0x00005a28 4552524f 523a2069 6e76616c 69642022 ERROR: invalid \"\n+ 0x00005a38 66222069 6e737472 75637469 6f6e2e0a f\" instruction..\n+ 0x00005a48 00000000 6d746c6c 69620000 4552524f ....mtllib..ERRO\n+ 0x00005a58 523a204d 656d6f72 7920616c 6c6f6361 R: Memory alloca\n+ 0x00005a68 74696f6e 20666169 6c757265 20666f72 tion failure for\n+ 0x00005a78 204d544c 2066696c 65206e61 6d652e0a MTL file name..\n+ 0x00005a88 00000000 4e4f5445 3a205265 6164696e ....NOTE: Readin\n+ 0x00005a98 67202225 73222e0a 00000000 5741524e g \"%s\"......WARN\n+ 0x00005aa8 3a206661 696c6564 20746f20 6c6f6164 : failed to load\n+ 0x00005ab8 2066696c 65202225 73222e0a 00000000 file \"%s\"......\n+ 0x00005ac8 6e65776d 746c0000 4552524f 523a204d newmtl..ERROR: M\n+ 0x00005ad8 61746572 69616c20 6e616d65 20746f6f aterial name too\n+ 0x00005ae8 206c6f6e 672e0a00 5741524e 3a204578 long...WARN: Ex\n+ 0x00005af8 70656374 6564206e 65776d74 6c206265 pected newmtl be\n+ 0x00005b08 666f7265 20222573 2220696e 73747275 fore \"%s\" instru\n+ 0x00005b18 6374696f 6e2e0a00 5741524e 3a20696e ction...WARN: in\n+ 0x00005b28 76616c69 64202225 73222069 6e737472 valid \"%s\" instr\n+ 0x00005b38 75637469 6f6e2e0a 00000000 7573656d uction......usem\n+ 0x00005b48 746c0000 72620000 736f6c69 64000000 tl..rb..solid...\n+ 0x00005b58 66616365 74000000 76657274 65780000 facet...vertex..\n+ 0x00005b68 4552524f 523a2069 6e76616c 69642022 ERROR: invalid \"\n+ 0x00005b78 76657274 65782220 696e7374 72756374 vertex\" instruct\n+ 0x00005b88 696f6e2e 0a000000 4552524f 523a2046 ion.....ERROR: F\n+ 0x00005b98 61696c65 6420746f 20726561 64206661 ailed to read fa\n+ 0x00005ba8 63657420 636f756e 742e0a00 4552524f cet count...ERRO\n+ 0x00005bb8 523a2046 61696c65 6420746f 20726561 R: Failed to rea\n+ 0x00005bc8 64206661 63657420 64617461 2e0a0000 d facet data....\n+ 0x00005bd8 5741524e 3a20696d 706f7274 65642066 WARN: imported f\n+ 0x00005be8 61636574 20636f75 6e742064 6f657320 acet count does \n+ 0x00005bf8 6e6f7420 6d617463 68206578 70656374 not match expect\n+ 0x00005c08 65642066 61636574 20636f75 6e742e0a ed facet count..\n+ 0x00005c18 00000000 7372632f 74726961 6e67756c ....src/triangul\n+ 0x00005c28 6172697a 6174696f 6e2e6300 6e203e3d arization.c.n >=\n+ 0x00005c38 20330000 6e32203d 3d206e20 2d203100 3..n2 == n - 1.\n+ 0x00005c48 6e31202b 206e3220 3d3d206e 202b2032 n1 + n2 == n + 2\n+ 0x00005c58 00000000 7372632f 73757266 6163652e ....src/surface.\n+ 0x00005c68 63000000 73757266 6163652d 3e706978 c...surface->pix\n+ 0x00005c78 656c7300 73757266 61636500 1b5b3338 els.surface..[38\n+ 0x00005c88 3b323b25 643b2564 3b25646d 25631b5b ;2;%d;%d;%dm%c.[\n+ 0x00005c98 306d0000 25630000 7374725f 63686f70 0m..%c..str_chop\n+ 0x00005ca8 00000000 6d6f6465 6c5f6368 616e6765 ....model_change\n+ 0x00005cb8 5f6f7269 656e7461 74696f6e 00000000 _orientation....\n+ 0x00005cc8 74726961 6e67756c 6172697a 655f7265 triangularize_re\n+ 0x00005cd8 63757273 65000000 74726961 6e67756c curse...triangul\n+ 0x00005ce8 6172697a 65000000 73757266 6163655f arize...surface_\n+ 0x00005cf8 636c6561 72000000 3e000000 41000000 clear...>...A...\n 0x00005d08 0c000000 41000000 11000000 41000000 ....A.......A...\n 0x00005d18 27000000 41000000 36000000 41000000 '...A...6...A...\n 0x00005d28 03000000 41000000 06000000 41000000 ....A.......A...\n 0x00005d38 15000000 41000000 0f000000 41000000 ....A.......A...\n 0x00005d48 0e000000 41000000 26000000 41000000 ....A...&...A...\n 0x00005d58 13000000 41000000 29000000 41000000 ....A...)...A...\n 0x00005d68 02000000 41000000 19000000 41000000 ....A.......A...\n"}, {"source1": "readelf --wide --decompress --hex-dump=.gnu_debuglink {}", "source2": "readelf --wide --decompress --hex-dump=.gnu_debuglink {}", "comments": ["error from `readelf --wide --decompress --hex-dump=.gnu_debuglink {}`:", "readelf: Error: Unable to find program interpreter name", "readelf: Error: no .dynamic section in the dynamic segment"], "unified_diff": "@@ -1,7 +1,7 @@\n \n Hex dump of section '.gnu_debuglink':\n- 0x00000000 34653039 31663632 35323366 30343231 4e091f62523f0421\n- 0x00000010 35363937 62333861 64363037 34626534 5697b38ad6074be4\n- 0x00000020 62313434 39612e64 65627567 00000000 b1449a.debug....\n- 0x00000030 61bd8fa2 a...\n+ 0x00000000 62333564 30383434 38613164 34646132 b35d08448a1d4da2\n+ 0x00000010 30643861 63336461 61326434 62626135 0d8ac3daa2d4bba5\n+ 0x00000020 36653831 32302e64 65627567 00000000 6e8120.debug....\n+ 0x00000030 1fa5257d ..%}\n \n"}]}]}]}]}, {"source1": "3d-ascii-viewer-dbgsym_1.4.0+git20240503+ds-2_armhf.deb", "source2": "3d-ascii-viewer-dbgsym_1.4.0+git20240503+ds-2_armhf.deb", "unified_diff": null, "details": [{"source1": "file list", "source2": "file list", "unified_diff": "@@ -1,3 +1,3 @@\n -rw-r--r-- 0 0 0 4 2025-02-19 16:54:01.000000 debian-binary\n -rw-r--r-- 0 0 0 536 2025-02-19 16:54:01.000000 control.tar.xz\n--rw-r--r-- 0 0 0 40384 2025-02-19 16:54:01.000000 data.tar.xz\n+-rw-r--r-- 0 0 0 40340 2025-02-19 16:54:01.000000 data.tar.xz\n"}, {"source1": "control.tar.xz", "source2": "control.tar.xz", "unified_diff": null, "details": [{"source1": "control.tar", "source2": "control.tar", "unified_diff": null, "details": [{"source1": "./control", "source2": "./control", "unified_diff": "@@ -5,8 +5,8 @@\n Architecture: armhf\n Maintainer: Alex Myczko \n Installed-Size: 79\n Depends: 3d-ascii-viewer (= 1.4.0+git20240503+ds-2)\n Section: debug\n Priority: optional\n Description: debug symbols for 3d-ascii-viewer\n-Build-Ids: 9f4e091f62523f04215697b38ad6074be4b1449a\n+Build-Ids: 2fb35d08448a1d4da20d8ac3daa2d4bba56e8120\n"}, {"source1": "./md5sums", "source2": "./md5sums", "unified_diff": null, "details": [{"source1": "./md5sums", "source2": "./md5sums", "comments": ["Files differ"], "unified_diff": null}, {"source1": "line order", "source2": "line order", "unified_diff": "@@ -1 +1 @@\n-usr/lib/debug/.build-id/9f/4e091f62523f04215697b38ad6074be4b1449a.debug\n+usr/lib/debug/.build-id/2f/b35d08448a1d4da20d8ac3daa2d4bba56e8120.debug\n"}]}]}]}, {"source1": "data.tar.xz", "source2": "data.tar.xz", "unified_diff": null, "details": [{"source1": "data.tar", "source2": "data.tar", "unified_diff": null, "details": [{"source1": "file list", "source2": "file list", "unified_diff": "@@ -1,10 +1,10 @@\n drwxr-xr-x 0 root (0) root (0) 0 2025-02-19 16:54:01.000000 ./\n drwxr-xr-x 0 root (0) root (0) 0 2025-02-19 16:54:01.000000 ./usr/\n drwxr-xr-x 0 root (0) root (0) 0 2025-02-19 16:54:01.000000 ./usr/lib/\n drwxr-xr-x 0 root (0) root (0) 0 2025-02-19 16:54:01.000000 ./usr/lib/debug/\n drwxr-xr-x 0 root (0) root (0) 0 2025-02-19 16:54:01.000000 ./usr/lib/debug/.build-id/\n-drwxr-xr-x 0 root (0) root (0) 0 2025-02-19 16:54:01.000000 ./usr/lib/debug/.build-id/9f/\n--rw-r--r-- 0 root (0) root (0) 70480 2025-02-19 16:54:01.000000 ./usr/lib/debug/.build-id/9f/4e091f62523f04215697b38ad6074be4b1449a.debug\n+drwxr-xr-x 0 root (0) root (0) 0 2025-02-19 16:54:01.000000 ./usr/lib/debug/.build-id/2f/\n+-rw-r--r-- 0 root (0) root (0) 70444 2025-02-19 16:54:01.000000 ./usr/lib/debug/.build-id/2f/b35d08448a1d4da20d8ac3daa2d4bba56e8120.debug\n drwxr-xr-x 0 root (0) root (0) 0 2025-02-19 16:54:01.000000 ./usr/share/\n drwxr-xr-x 0 root (0) root (0) 0 2025-02-19 16:54:01.000000 ./usr/share/doc/\n lrwxrwxrwx 0 root (0) root (0) 0 2025-02-19 16:54:01.000000 ./usr/share/doc/3d-ascii-viewer-dbgsym -> 3d-ascii-viewer\n"}]}]}]}]}