From a3eeee5b3e1974d0734eaaa804f441c83054541d Mon Sep 17 00:00:00 2001 From: Mike Pall Date: Thu, 7 Oct 2010 02:24:57 +0200 Subject: [PATCH] PPC: Update DynASM-generated file. PPC/e500v2 interpreter port is now feature-complete. --- src/buildvm_ppcspe.h | 5704 ++++++++++++++++++++++++++++++++++++++---- 1 file changed, 5284 insertions(+), 420 deletions(-) diff --git a/src/buildvm_ppcspe.h b/src/buildvm_ppcspe.h index 8c25fdf8..8e1c81af 100644 --- a/src/buildvm_ppcspe.h +++ b/src/buildvm_ppcspe.h @@ -12,474 +12,4919 @@ #define DASM_SECTION_CODE_OP 0 #define DASM_SECTION_CODE_SUB 1 #define DASM_MAXSECTION 2 -static const unsigned int build_actionlist[462] = { +static const unsigned int build_actionlist[4905] = { 0x00010001, 0x00060014, -0x7c810808, -0x00060015, -0x7c810808, +0x72000000, +0x00090200, +0x11000229, +0x000980b0, +0x41820000, +0x00050815, +0x8209fff8, +0x7d2e4b78, +0x9514fff8, 0x00060016, -0x7c810808, -0x00060017, -0x7c810808, +0x72000000, +0x00090200, +0x398c0008, +0x7d936378, +0x41820000, +0x00050817, 0x00060018, -0x7c810808, +0x2c000000, +0x00098200, +0x56090038, +0x38000000, +0x00098200, +0x7d297050, +0x40820000, +0x00050814, +0x350cfff8, +0x91320000, +0x00098200, +0x81210018, +0x39cefff8, +0x90110000, +0x00098200, +0x55291800, +0x000900a1, +0x41820000, +0x00050802, +0x0006000b, +0x3508fff8, +0x10140301, +0x3a940008, +0x100e0321, +0x39ce0008, +0x40820000, +0x0005080b, +0x0006000c, +0x7c096000, +0x40820000, +0x00050806, +0x0006000d, +0x91d20000, +0x00098200, 0x00060019, -0x7c810808, +0x00000000, +0x80010014, +0x38600000, +0x90120000, +0x00098200, 0x0006001a, -0x7c810808, +0x800100b4, +0x11c12301, +0x11e12b01, +0x12013301, +0x12213b01, +0x12414301, +0x12614b01, +0x7c0803a6, +0x12815301, +0x12a15b01, +0x12c16301, +0x12e16b01, +0x13017301, +0x13217b01, +0x13418301, +0x13618b01, +0x13819301, +0x13a19b01, +0x13c1a301, +0x13e1ab01, +0x382100b0, +0x4e800020, +0x00060010, +0x40810000, +0x00050807, +0x81120000, +0x00098200, +0x7c0e4040, +0x40800000, +0x00050808, +0x134e0321, +0x398c0008, +0x39ce0008, +0x48000000, +0x0005000c, +0x00060011, +0x7c096050, +0x2c090000, +0x7c007050, +0x7dce009e, +0x48000000, +0x0005000d, +0x00060012, +0x91d20000, +0x00098200, +0x7d956378, +0x7d244b78, +0x7e439378, +0x48000001, +0x00030000, +0x81210018, +0x7eacab78, +0x55291800, +0x000900a1, +0x81d20000, +0x00098200, +0x48000000, +0x0005000c, 0x0006001b, -0x7c810808, +0x7c611b78, +0x7c832378, 0x0006001c, -0x7c810808, +0x82410010, +0x38000000, +0x00098200, +0x81120000, +0x00098200, +0x90080000, +0x00098200, +0x48000000, +0x0005001a, 0x0006001d, -0x7c810808, +0x00000000, +0x5461003a, 0x0006001e, -0x7c810808, +0x82410010, +0x12c00229, +0x000980b0, +0x13200229, +0x000980b0, +0x3f604338, +0x13000229, +0x000980b0, +0x38000000, +0x81d20000, +0x00098200, +0x137b022d, +0x82320000, +0x00098200, +0x12e00229, +0x000980b0, +0x39000000, +0x00098200, +0x13400229, +0x000980b0, +0x38000000, +0x00098200, +0x820efff8, +0x3a8efff8, +0x3a310000, +0x00098200, +0x91140000, +0x39800010, +0x90110000, +0x00098200, +0x48000000, +0x00050016, 0x0006001f, -0x7c810808, +0x38800000, +0x00098200, +0x48000000, +0x00050002, 0x00060020, -0x7c810808, +0x7d6e5a14, +0x7e8ea050, +0x91d20000, +0x00098200, +0x3a100004, +0x91720000, +0x00098200, +0x568400fe, +0x000900ab, +0x0006000c, +0x9201000c, +0x7e439378, +0x48000001, +0x00030000, +0x00000000, +0x81d20000, +0x00098200, +0x81720000, +0x00098200, +0x814efffc, +0x7d6e5850, +0x820a0000, +0x00098200, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54f4dd78, +0x7c11402e, +0x7e947214, +0x7c0903a6, +0x4e800420, 0x00060021, -0x7c810808, +0x9421ff50, +0x11c12321, +0x11e12b21, +0x12013321, +0x12213b21, +0x12414321, +0x12614b21, +0x7c0802a6, +0x12815321, +0x12a15b21, +0x12c16321, +0x12e16b21, +0x13017321, +0x13217b21, +0x900100b4, +0x13418321, +0x13618b21, +0x13819321, +0x13a19b21, +0x13c1a321, +0x13e1ab21, +0x7c721b78, +0x82320000, +0x00098200, +0x7c8e2378, +0x89120000, +0x00098200, +0x92410010, +0x3a000000, +0x00098200, +0x38010000, +0x00098200, +0x3a310000, +0x00098200, +0x90a10018, +0x28080000, +0x90a1001c, +0x90120000, +0x00098200, +0x90a10014, +0x9061000c, +0x41820000, +0x00050803, +0x7dd47378, +0x81d20000, +0x00098200, +0x12c00229, +0x000980b0, +0x81120000, +0x00098200, +0x13200229, +0x000980b0, +0x3f604338, +0x13000229, +0x000980b0, +0x820efff8, +0x39200000, +0x12e00229, +0x000980b0, +0x7d8e4050, +0x137b4a2d, +0x98d20000, +0x00098200, +0x72000000, +0x00090200, +0x38000000, +0x00098200, +0x398c0008, +0x13400229, +0x000980b0, +0x7d936378, +0x90110000, +0x00098200, +0x00000000, +0x41820000, +0x00050817, +0x48000000, +0x00050018, 0x00060022, -0x7c810808, +0x9421ff50, +0x11c12321, +0x11e12b21, +0x12013321, +0x12213b21, +0x12414321, +0x12614b21, +0x7c0802a6, +0x12815321, +0x12a15b21, +0x12c16321, +0x12e16b21, +0x13017321, +0x13217b21, +0x900100b4, +0x13418321, +0x13618b21, +0x13819321, +0x13a19b21, +0x13c1a321, +0x13e1ab21, +0x3a000000, +0x00098200, +0x90c1001c, +0x48000000, +0x00050001, 0x00060023, -0x7c810808, +0x9421ff50, +0x11c12321, +0x11e12b21, +0x12013321, +0x12213b21, +0x12414321, +0x12614b21, +0x7c0802a6, +0x12815321, +0x12a15b21, +0x12c16321, +0x12e16b21, +0x13017321, +0x13217b21, +0x900100b4, +0x13418321, +0x13618b21, +0x13819321, +0x13a19b21, +0x13c1a321, +0x13e1ab21, +0x3a000000, +0x00098200, +0x0006000b, +0x81030000, +0x00098200, +0x90a10018, +0x7c721b78, +0x90610010, +0x7c8e2378, +0x90320000, +0x00098200, +0x82320000, +0x00098200, +0x9061000c, +0x91010014, +0x3a310000, +0x00098200, +0x0006000d, +0x81320000, +0x00098200, +0x12c00229, +0x000980b0, +0x81120000, +0x00098200, +0x13200229, +0x000980b0, +0x7e107214, +0x13000229, +0x000980b0, +0x3f604338, +0x38000000, +0x7e098050, +0x12e00229, +0x000980b0, +0x7d6e4050, +0x137b022d, +0x38000000, +0x00098200, +0x13400229, +0x000980b0, +0x90110000, +0x00098200, 0x00060024, -0x7c810808, -0x00060025, -0x7c810808, +0x00000000, +0x3800fff8, +0x114e0300, +0x100aca34, +0x40800000, +0x00050825, 0x00060026, -0x7c810808, +0x920efff8, +0x820a0000, +0x00098200, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54f4dd78, +0x7c11402e, +0x7e947214, +0x7c0903a6, +0x4e800420, 0x00060027, -0x7c810808, +0x9421ff50, +0x11c12321, +0x11e12b21, +0x12013321, +0x12213b21, +0x12414321, +0x12614b21, +0x7c0802a6, +0x12815321, +0x12a15b21, +0x12c16321, +0x12e16b21, +0x13017321, +0x13217b21, +0x900100b4, +0x13418321, +0x13618b21, +0x13819321, +0x13a19b21, +0x13c1a321, +0x13e1ab21, +0x7c721b78, +0x80030000, +0x00098200, +0x90610010, +0x81120000, +0x00098200, +0x9061000c, +0x7c080050, +0x81120000, +0x00098200, +0x90320000, +0x00098200, +0x39200000, +0x90010018, +0x9121001c, +0x91010014, +0x7cc903a6, +0x4e800421, +0x7c6e1b79, +0x82320000, +0x00098200, +0x3a000000, +0x00098200, +0x3a310000, +0x00098200, +0x40820000, +0x0005080d, +0x48000000, +0x00050019, +0x00060015, +0x800efff4, +0x56080038, +0x7dca7378, +0x7dc87050, +0x810efffc, +0x392cfff8, +0x820afff0, +0x81080000, +0x00098200, +0x13544b20, +0x81e80000, +0x00098200, +0x7c0903a6, +0x4e800420, 0x00060028, -0x7c810808, -0x00060029, -0x00000000, -0x7c810808, -0x0006002a, -0x7c810808, +0x80f0fffc, +0x388afff0, +0x54f55d78, +0x10140301, +0x7d0eaa14, +0x91d20000, +0x00098200, +0x7c082040, +0x7ca82050, +0x54f4dd78, +0x10040321, +0x40820000, +0x00050829, +0x100ea320, +0x48000000, +0x0005002a, 0x0006002b, -0x7c810808, +0x11775a2d, +0x38b10000, +0x00098200, +0x00000000, +0x54ea5d78, +0x11650321, +0x7c8e5214, +0x48000000, +0x00050001, 0x0006002c, -0x7c810808, +0x1158522d, +0x38910000, +0x00098200, +0x11775a2d, +0x11440321, +0x38b10000, +0x00098200, +0x11650321, +0x48000000, +0x00050001, 0x0006002d, -0x7c810808, +0x100002f1, +0x54ea5d78, +0x38b10000, +0x00098200, +0x7c8e5214, +0x10050321, +0x48000000, +0x00050001, 0x0006002e, -0x7c810808, +0x54ea5d78, +0x54eb9d78, +0x7c8e5214, +0x7cae5a14, +0x0006000b, +0x91d20000, +0x00098200, +0x7e439378, +0x9201000c, +0x48000001, +0x00030001, +0x28030000, +0x41820000, +0x00050803, +0x10030301, +0x100ea320, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x0006000d, +0x210e0000, +0x00098200, +0x81d20000, +0x00098200, +0x920efff0, +0x7e087214, +0x814efffc, +0x39600010, +0x48000000, +0x00050026, 0x0006002f, -0x7c810808, +0x11775a2d, +0x38b10000, +0x00098200, +0x54ea5d78, +0x11650321, +0x7c8e5214, +0x48000000, +0x00050001, 0x00060030, -0x7c810808, +0x1158522d, +0x38910000, +0x00098200, +0x00000000, +0x11775a2d, +0x11440321, +0x38b10000, +0x00098200, +0x11650321, +0x48000000, +0x00050001, 0x00060031, -0x7c810808, +0x100002f1, +0x54ea5d78, +0x38b10000, +0x00098200, +0x7c8e5214, +0x10050321, +0x48000000, +0x00050001, 0x00060032, -0x7c810808, +0x54ea5d78, +0x54eb9d78, +0x7c8e5214, +0x7cae5a14, +0x0006000b, +0x91d20000, +0x00098200, +0x7e439378, +0x9201000c, +0x48000001, +0x00030002, +0x28030000, +0x100ea300, +0x41820000, +0x00050803, +0x10030321, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x0006000d, +0x210e0000, +0x00098200, +0x81d20000, +0x00098200, +0x920efff0, +0x7e087214, +0x814efffc, +0x39600018, +0x100e1321, +0x48000000, +0x00050026, 0x00060033, -0x7c810808, -0x00060034, -0x7c810808, +0x7e439378, +0x3a10fffc, +0x7c8ea214, +0x9201000c, +0x7cae6214, +0x91d20000, +0x00098200, +0x54e6063e, +0x48000001, +0x00030003, +0x0006000d, +0x28030001, +0x41810000, +0x00050834, +0x0006000e, +0x80f00000, +0x3a100004, +0x54e993ba, +0x3cd00000, +0x00098200, +0x7d293214, +0x7e10481e, +0x0006002a, +0x00000000, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, 0x00060035, -0x7c810808, +0x80f0fffc, +0x10140301, +0x54e8dd78, +0x100e4320, +0x48000000, +0x0005002a, 0x00060036, -0x7c810808, +0x80140000, +0x39000000, +0x00098200, +0x7c080040, +0x48000000, +0x0005000e, 0x00060037, -0x7c810808, +0x80140000, +0x39000000, +0x00098200, +0x7c004040, +0x48000000, +0x0005000e, 0x00060038, -0x7c810808, +0x3a10fffc, +0x91d20000, +0x00098200, +0x7e439378, +0x9201000c, +0x48000001, +0x00030004, +0x48000000, +0x0005000d, 0x00060039, -0x7c810808, +0x7cae5214, +0x7ccf5a14, +0x48000000, +0x00050001, 0x0006003a, -0x7c810808, +0x7caf5a14, +0x7cce5214, +0x48000000, +0x00050001, 0x0006003b, -0x7c810808, +0x7cae6214, +0x7ca62b78, +0x48000000, +0x00050001, 0x0006003c, -0x7c810808, +0x7cae5214, +0x7cce5a14, +0x0006000b, +0x7c8ea214, +0x91d20000, +0x00098200, +0x7e439378, +0x9201000c, +0x54e7063e, +0x48000001, +0x00030005, +0x00000000, +0x28030000, +0x41820000, +0x0005082a, +0x00060034, +0x7d0e1850, +0x9203fff0, +0x3a080000, +0x00098200, +0x7c6e1b78, +0x39600010, +0x48000000, +0x00050024, 0x0006003d, -0x7c810808, +0x7c8e6214, +0x91d20000, +0x00098200, +0x7e439378, +0x9201000c, +0x48000001, +0x00030006, +0x48000000, +0x00050034, +0x00060025, +0x7e439378, +0x91320000, +0x00098200, +0x388efff8, +0x9201000c, +0x7cae5a14, +0x7d755b78, +0x48000001, +0x00030007, +0x814efffc, +0x39750008, +0x920efff8, +0x820a0000, +0x00098200, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54f4dd78, +0x7c11402e, +0x7e947214, +0x7c0903a6, +0x4e800420, 0x0006003e, -0x7c810808, -0x7c810808, -0x0006003f, -0x00000000, -0x7c810808, -0x7c810808, +0x7e439378, +0x91d20000, +0x00098200, +0x3894fff8, +0x9201000c, +0x7cb45a14, +0x7d755b78, +0x48000001, +0x00030007, +0x810efff8, +0x39750008, +0x814efffc, +0x48000000, +0x0005003f, 0x00060040, -0x7c810808, -0x7c810808, +0x7e439378, +0x91d20000, +0x00098200, +0x7e84a378, +0x9201000c, +0x7cf53b78, +0x48000001, +0x00030008, +0x00000000, +0x56a0063e, +0x00000000, +0x56b4dd78, +0x00000000, +0x2c000000, +0x00098200, +0x00000000, +0x56ac9b78, +0x00000000, +0x41820000, +0x00070800, +0x00000000, +0x48000000, +0x00070000, 0x00060041, -0x7c810808, -0x00060042, -0x7c810808, -0x7c810808, -0x00060043, -0x7c810808, -0x7c810808, +0x280b0008, +0x100e0301, +0x41800000, +0x00050842, +0x111ad200, +0x3a8efff8, +0x10804232, +0x820efff8, +0x40840000, +0x00050842, +0x10140321, +0x398b0008, +0x41820000, +0x00050843, +0x39000008, +0x396bfff8, +0x0006000b, +0x7c085840, +0x100e4300, +0x10144320, +0x39080008, +0x40820000, +0x0005080b, +0x48000000, +0x00050043, 0x00060044, -0x7c810808, -0x00060045, -0x7c810808, -0x7c810808, +0x280b0008, +0x806e0000, +0x41800000, +0x00050842, +0x39200000, +0x00098200, +0x7c03b040, +0x7c6818f8, +0x7d09401e, +0x55081800, +0x000900a1, +0x392a0000, +0x00098200, +0x10694300, +0x48000000, +0x00050045, 0x00060046, -0x7c810808, -0x7c810808, +0x280b0008, +0x106e0301, +0x41800000, +0x00050842, +0x1003c234, +0x11031a2c, +0x40800000, +0x00050806, +0x0006000b, +0x81430000, +0x00098200, +0x0006000c, +0x107ad217, +0x280a0000, +0x81710000, +0x00098200, +0x41820000, +0x00050845, +0x00000000, +0x800a0000, +0x00098200, +0x1078522d, +0x810b0000, +0x00098200, +0x812a0000, +0x00098200, +0x11775a2d, +0x7d080038, +0x55002800, +0x000900a1, +0x55081800, +0x000900a1, +0x7d080050, +0x7d294214, +0x0006000d, +0x10090301, +0x00090cab, +0x11090301, +0x00090cab, +0x10005a34, +0x81290000, +0x00098200, +0x41830000, +0x00050805, +0x28090000, +0x41820000, +0x00050845, +0x48000000, +0x0005000d, +0x0006000f, +0x1008d234, +0x41800000, +0x00050845, +0x10684217, +0x48000000, +0x00050045, +0x00060010, +0x2c080000, +0x00098200, +0x7d0840f8, +0x41820000, +0x0005080b, +0x1003b232, +0x55081000, +0x000900a1, +0x39200000, +0x00098200, +0x7d09401e, +0x39310000, +0x00098200, +0x7d49402e, +0x48000000, +0x0005000c, 0x00060047, -0x7c810808, +0x00000000, +0x280b0010, +0x106e0301, +0x108e0b01, +0x41800000, +0x00050842, +0x1003222c, +0x1000c234, +0x40830000, +0x00050842, +0x81030000, +0x00098200, +0x28080000, +0x88c30000, +0x00098200, +0x40820000, +0x00050842, +0x70c00000, +0x00090200, +0x90830000, +0x00098200, +0x41820000, +0x00050845, +0x80110000, +0x00098200, +0x54c607b8, +0x90710000, +0x00098200, +0x98c30000, +0x00098200, +0x90030000, +0x00098200, +0x48000000, +0x00050045, 0x00060048, -0x7c810808, -0x7c810808, +0x280b0010, +0x108e0301, +0x41800000, +0x00050842, +0x1004c234, +0x38ae0008, +0x40800000, +0x00050842, +0x7e439378, +0x48000001, +0x00030009, +0x10630301, +0x48000000, +0x00050045, 0x00060049, -0x7c810808, -0x7c810808, +0x280b0008, +0x106e0301, +0x40820000, +0x00050842, +0x1003b232, +0x41800000, +0x00050845, +0x48000000, +0x00050042, 0x0006004a, -0x7c810808, -0x7c810808, -0x0006004b, -0x7c810808, -0x7c810808, +0x00000000, +0x280b0008, +0x106e0301, +0x41800000, +0x00050842, +0x1003ba34, +0x41800000, +0x00050845, +0x80110000, +0x00098200, +0x1003b232, +0x28800000, +0x91d20000, +0x00098200, +0x4c403202, +0x9201000c, +0x40820000, +0x00050842, +0x80110000, +0x00098200, +0x81110000, +0x00098200, +0x7c004040, +0x40800001, +0x0005084b, +0x7e439378, +0x7dc47378, +0x48000001, +0x0003000a, +0x10771a2d, +0x48000000, +0x00050045, 0x0006004c, -0x7c810808, +0x280b0008, +0x108e0301, +0x41800000, +0x00050842, +0x134e5b20, +0x1004c234, +0x820efff8, +0x40800000, +0x00050842, +0x91d20000, +0x00098200, +0x7e439378, +0x91d20000, +0x00098200, +0x38ae0008, +0x9201000c, +0x48000001, +0x0003000b, +0x28030000, +0x107ad217, +0x41820000, +0x00050845, +0x100e0b01, +0x3a8efff8, +0x110e1301, +0x10140321, +0x39800000, +0x00098200, +0x11140b21, +0x48000000, +0x00050043, 0x0006004d, -0x7c810808, +0x280b0008, +0x106e0301, +0x41800000, +0x00050842, +0x1003c234, +0x820efff8, +0x40800000, +0x00050842, +0x00000000, +0x100a0301, +0x00090cab, +0x3a8efff8, +0x106e0321, +0x134e0b21, +0x39800000, +0x00098200, +0x10140321, +0x48000000, +0x00050043, 0x0006004e, -0x7c810808, -0x7c810808, -0x7c810808, +0x280b0010, +0x106e0301, +0x108e0b01, +0x41800000, +0x00050842, +0x1003c234, +0x820efff8, +0x40800000, +0x00050842, +0x1004b232, +0x3cc03ff0, +0x40800000, +0x00050842, +0x112022f5, +0x80030000, +0x00098200, +0x10c6da2d, +0x81030000, +0x00098200, +0x108432e0, +0x39290001, +0x3a8efff8, +0x7c004840, +0x55261800, +0x000900a1, +0x40810000, +0x00050802, +0x11083300, +0x0006000b, +0x1008d234, +0x39800000, +0x00098200, +0x41800000, +0x00050843, +0x10940321, +0x39800000, +0x00098200, +0x11140b21, +0x48000000, +0x00050043, +0x0006000c, +0x80030000, +0x00098200, +0x28000000, +0x39800000, +0x00098200, +0x41820000, +0x00050843, +0x7d244b78, +0x48000001, +0x0003000c, +0x28030000, +0x39800000, +0x00098200, +0x00000000, +0x41820000, +0x00050843, +0x11030301, +0x48000000, +0x0005000b, 0x0006004f, -0x7c810808, +0x280b0008, +0x106e0301, +0x41800000, +0x00050842, +0x1003c234, +0x820efff8, +0x40800000, +0x00050842, +0x100a0301, +0x00090cab, +0x3a8efff8, +0x11000229, +0x106e0321, +0x110e0b21, +0x39800000, +0x00098200, +0x10140321, +0x48000000, +0x00050043, 0x00060050, -0x7c810808, +0x280b0008, +0x88d10000, +0x00098200, +0x41800000, +0x00050842, +0x7dc97378, +0x39ce0008, +0x54c607fe, +0x000900ab, +0x396bfff8, +0x3a060000, +0x00098200, +0x48000000, +0x00050024, 0x00060051, -0x7c810808, +0x280b0010, +0x106e0301, +0x108e0b01, +0x41800000, +0x00050842, +0x88d10000, +0x00098200, +0x7dc97378, +0x1004ca34, +0x40800000, +0x00050842, +0x39ce0010, +0x54c607fe, +0x000900ab, +0x10890321, +0x396bfff0, +0x10690b21, +0x3a060000, +0x00098200, +0x48000000, +0x00050024, 0x00060052, -0x7c810808, +0x00000000, +0x280b0008, +0x106e0301, +0x41800000, +0x00050842, +0x10031a2c, +0x2c000000, +0x00098200, +0x40820000, +0x00050842, +0x88030000, +0x00098200, +0x81030000, +0x00098200, +0x80830000, +0x00098200, +0x28000000, +0x00090200, +0x81230000, +0x00098200, +0x28880000, +0x80030000, +0x00098200, +0x7f844840, +0x820efff8, +0x4f013342, +0x7d245a14, +0x4f3e1102, +0x7c890040, +0x4f18cb82, +0x9201000c, +0x4f182b82, +0x91d20000, +0x00098200, +0x41980000, +0x00050842, +0x0006000b, +0x39ce0008, +0x396bfff8, +0x3929fff8, +0x91230000, +0x00098200, +0x39000000, +0x91d20000, +0x00098200, +0x0006000c, +0x7c085800, +0x100e4300, +0x41820000, +0x00050803, +0x10044320, +0x39080008, +0x48000000, +0x0005000c, +0x0006000d, +0x38a00000, +0x7c751b78, +0x38c00000, +0x48000001, +0x00050021, +0x0006000e, +0x81350000, +0x00098200, +0x28030000, +0x00090200, +0x00000000, +0x80d50000, +0x00098200, +0x38000000, +0x00098200, +0x81d20000, +0x00098200, +0x90110000, +0x00098200, +0x41810000, +0x00050808, +0x7d893050, +0x80120000, +0x00098200, +0x280c0000, +0x7d0e6214, +0x41820000, +0x00050806, +0x7c080040, +0x39000000, +0x41810000, +0x00050809, +0x38ccfff8, +0x91350000, +0x00098200, +0x0006000f, +0x7c083040, +0x10094300, +0x100e4320, +0x39080008, +0x40820000, +0x0005080f, +0x00060010, +0x72000000, +0x00090200, +0x39000000, +0x00098200, +0x3a8efff8, +0x910efff8, +0x398c0010, +0x00060011, +0x9201000c, +0x7d936378, +0x41820000, +0x00050817, +0x48000000, +0x00050018, +0x00060012, +0x72000000, +0x00090200, +0x38c6fff8, +0x39000000, +0x00098200, +0x10060301, +0x90d50000, +0x00098200, +0x39800000, +0x00098200, +0x00000000, +0x910efff8, +0x3a8efff8, +0x100e0321, +0x48000000, +0x00050011, +0x00060013, +0x7e439378, +0x558400fe, +0x000900ab, +0x48000001, +0x00030000, +0x38600000, +0x48000000, +0x0005000e, 0x00060053, -0x7c810808, +0x806a0000, +0x00098200, +0x88030000, +0x00098200, +0x81030000, +0x00098200, +0x80830000, +0x00098200, +0x28000000, +0x00090200, +0x81230000, +0x00098200, +0x28880000, +0x80030000, +0x00098200, +0x7f844840, +0x820efff8, +0x4f013342, +0x7d245a14, +0x4f3e1102, +0x7c890040, +0x4f18cb82, +0x9201000c, +0x4f182b82, +0x91d20000, +0x00098200, +0x41980000, +0x00050842, +0x0006000b, +0x91230000, +0x00098200, +0x39000000, +0x91d20000, +0x00098200, +0x0006000c, +0x7c085800, +0x100e4300, +0x41820000, +0x00050803, +0x10044320, +0x39080008, +0x48000000, +0x0005000c, +0x0006000d, +0x00000000, +0x38a00000, +0x7c751b78, +0x38c00000, +0x48000001, +0x00050021, +0x0006000e, +0x81350000, +0x00098200, +0x28030000, +0x00090200, +0x80d50000, +0x00098200, +0x38000000, +0x00098200, +0x81d20000, +0x00098200, +0x90110000, +0x00098200, +0x41810000, +0x00050808, +0x7d893050, +0x80120000, +0x00098200, +0x280c0000, +0x7d0e6214, +0x41820000, +0x00050806, +0x7c080040, +0x39000000, +0x41810000, +0x00050809, +0x38ccfff8, +0x91350000, +0x00098200, +0x0006000f, +0x7c083040, +0x10094300, +0x100e4320, +0x39080008, +0x40820000, +0x0005080f, +0x00060010, +0x72000000, +0x00090200, +0x7dd47378, +0x398c0008, +0x00060011, +0x9201000c, +0x7d936378, +0x41820000, +0x00050817, +0x48000000, +0x00050018, +0x00060012, +0x7e439378, +0x7ea4ab78, +0x48000001, +0x0003000d, +0x00060013, +0x00000000, +0x7e439378, +0x558400fe, +0x000900ab, +0x48000001, +0x00030000, +0x38600000, +0x48000000, +0x0005000e, 0x00060054, -0x7c810808, +0x80120000, +0x00098200, +0x7d0e5a14, +0x91d20000, +0x00098200, +0x70000000, +0x00090200, +0x91120000, +0x00098200, +0x38600000, +0x00098200, +0x41820000, +0x00050842, +0x93720000, +0x00098200, +0x98720000, +0x00098200, +0x48000000, +0x0005001a, 0x00060055, -0x00000000, -0x7c810808, +0x280b0008, +0x106e0301, +0x41800000, +0x00050842, +0x1003b232, +0x40800000, +0x00050842, +0x106302e4, +0x00060045, +0x820efff8, +0x3a8efff8, +0x10740321, 0x00060056, -0x7c810808, +0x39800000, +0x00098200, +0x00060043, +0x72000000, +0x00090200, +0x7d936378, +0x40820000, +0x00050818, +0x00000000, +0x80f0fffc, +0x54ea5d78, +0x0006000f, +0x7c0a6040, +0x54e0dd78, +0x41810000, +0x00050806, +0x80f00000, +0x3a100004, +0x7dc0a050, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00060010, +0x390cfff8, +0x398c0008, +0x13544320, +0x48000000, +0x0005000f, 0x00060057, -0x7c810808, -0x00060058, -0x7c810808, +0x280b0008, +0x108e0301, +0x41800000, +0x00050842, +0x1004b232, +0x1064222c, +0x40800000, +0x00050842, +0x820efff8, +0x48000001, +0x00050058, +0x3a8efff8, +0x10940321, +0x48000000, +0x00050056, 0x00060059, -0x7c810808, -0x0006005a, -0x7c810808, +0x280b0008, +0x108e0301, +0x41800000, +0x00050842, +0x1004b232, +0x1064222c, +0x40800000, +0x00050842, +0x820efff8, +0x48000001, +0x0005005a, +0x3a8efff8, +0x10940321, +0x48000000, +0x00050056, 0x0006005b, -0x7c810808, +0x280b0008, +0x108e0301, +0x41800000, +0x00050842, +0x1004b232, +0x1064222c, +0x40800000, +0x00050842, +0x48000001, +0x0003000e, +0x1063222d, +0x48000000, +0x00050045, 0x0006005c, -0x7c810808, +0x280b0008, +0x108e0301, +0x41800000, +0x00050842, +0x1004b232, +0x1064222c, +0x40800000, +0x00050842, +0x00000000, +0x48000001, +0x0003000f, +0x1063222d, +0x48000000, +0x00050045, 0x0006005d, -0x7c810808, +0x280b0008, +0x108e0301, +0x41800000, +0x00050842, +0x1004b232, +0x1064222c, +0x40800000, +0x00050842, +0x48000001, +0x00030010, +0x1063222d, +0x48000000, +0x00050045, 0x0006005e, -0x7c810808, +0x280b0008, +0x108e0301, +0x41800000, +0x00050842, +0x1004b232, +0x1064222c, +0x40800000, +0x00050842, +0x48000001, +0x00030011, +0x1063222d, +0x48000000, +0x00050045, 0x0006005f, -0x7c810808, +0x280b0008, +0x108e0301, +0x41800000, +0x00050842, +0x1004b232, +0x1064222c, +0x40800000, +0x00050842, +0x48000001, +0x00030012, +0x1063222d, +0x48000000, +0x00050045, 0x00060060, -0x7c810808, +0x280b0008, +0x108e0301, +0x41800000, +0x00050842, +0x1004b232, +0x1064222c, +0x40800000, +0x00050842, +0x48000001, +0x00030013, +0x1063222d, +0x48000000, +0x00050045, 0x00060061, -0x7c810808, +0x00000000, +0x280b0008, +0x108e0301, +0x41800000, +0x00050842, +0x1004b232, +0x1064222c, +0x40800000, +0x00050842, +0x48000001, +0x00030014, +0x1063222d, +0x48000000, +0x00050045, 0x00060062, +0x280b0008, +0x108e0301, +0x41800000, +0x00050842, +0x1004b232, +0x1064222c, +0x40800000, +0x00050842, +0x48000001, +0x00030015, +0x1063222d, +0x48000000, +0x00050045, 0x00060063, -0x7c810808, -0x7c810808, +0x280b0008, +0x108e0301, +0x41800000, +0x00050842, +0x1004b232, +0x1064222c, +0x40800000, +0x00050842, +0x48000001, +0x00030016, +0x1063222d, +0x48000000, +0x00050045, 0x00060064, -0x7c810808, -0x7c810808, -0x7c810808, +0x280b0008, +0x108e0301, +0x41800000, +0x00050842, +0x1004b232, +0x1064222c, +0x40800000, +0x00050842, +0x48000001, +0x00030017, +0x1063222d, +0x48000000, +0x00050045, 0x00060065, -0x7c810808, -0x7c810808, -0x7c810808, +0x280b0008, +0x108e0301, +0x41800000, +0x00050842, +0x1004b232, +0x1064222c, +0x40800000, +0x00050842, +0x00000000, +0x48000001, +0x00030018, +0x1063222d, +0x48000000, +0x00050045, 0x00060066, -0x7c810808, -0x7c810808, -0x7c810808, +0x280b0008, +0x108e0301, +0x41800000, +0x00050842, +0x1004b232, +0x1064222c, +0x40800000, +0x00050842, +0x48000001, +0x00030019, +0x1063222d, +0x48000000, +0x00050045, 0x00060067, -0x7c810808, -0x7c810808, -0x7c810808, +0x280b0008, +0x108e0301, +0x41800000, +0x00050842, +0x1004b232, +0x1064222c, +0x40800000, +0x00050842, +0x48000001, +0x0003001a, +0x1063222d, +0x48000000, +0x00050045, 0x00060068, -0x7c810808, -0x7c810808, +0x280b0010, +0x108e0301, +0x10ce0b01, +0x41800000, +0x00050842, +0x1066222c, +0x1003b232, +0x10a6322c, +0x40830000, +0x00050842, +0x48000001, +0x0003001b, +0x1063222d, +0x48000000, +0x00050045, 0x00060069, -0x7c810808, -0x7c810808, +0x280b0010, +0x108e0301, +0x10ce0b01, +0x41800000, +0x00050842, +0x1066222c, +0x1003b232, +0x10a6322c, +0x40830000, +0x00050842, +0x48000001, +0x0003001c, +0x1063222d, +0x48000000, +0x00050045, 0x0006006a, -0x7c810808, -0x7c810808, +0x00000000, +0x280b0010, +0x108e0301, +0x10ce0b01, +0x41800000, +0x00050842, +0x1066222c, +0x1003b232, +0x10a6322c, +0x40830000, +0x00050842, +0x48000001, +0x0003001d, +0x1063222d, +0x48000000, +0x00050045, 0x0006006b, -0x00000000, -0x7c810808, 0x0006006c, -0x7c810808, +0x280b0008, +0x106e0301, +0x41800000, +0x00050842, +0x1003b232, +0x40800000, +0x00050842, +0x108a0301, +0x00090cab, +0x106322e8, +0x48000000, +0x00050045, 0x0006006d, -0x7c810808, +0x280b0010, +0x108e0301, +0x10ce0b01, +0x41800000, +0x00050842, +0x1066222c, +0x1003b232, +0x40830000, +0x00050842, +0x10a032f5, +0x48000001, +0x0003001e, +0x1063222d, +0x48000000, +0x00050045, 0x0006006e, -0x7c810808, +0x280b0008, +0x108e0301, +0x41800000, +0x00050842, +0x1004b232, +0x1064222c, +0x40800000, +0x00050842, +0x38b10000, +0x00098200, +0x820efff8, +0x48000001, +0x0003001f, +0x81110000, +0x00098200, +0x1063222d, +0x108042f1, +0x3a8efff8, +0x10740321, +0x39800000, +0x00098200, +0x00000000, +0x10940b21, +0x48000000, +0x00050043, 0x0006006f, -0x7c810808, +0x280b0008, +0x108e0301, +0x41800000, +0x00050842, +0x1004b232, +0x1064222c, +0x40800000, +0x00050842, +0x38aefff8, +0x820efff8, +0x48000001, +0x00030020, +0x1063222d, +0x3a8efff8, +0x106e0321, +0x39800000, +0x00098200, +0x48000000, +0x00050043, 0x00060070, -0x7c810808, -0x7c810808, +0x280b0008, +0x106e0301, +0x41800000, +0x00050842, +0x1003b232, +0x39000008, +0x40800000, +0x00050842, +0x0006000b, +0x108e4300, +0x7c885840, +0x1004b232, +0x40840000, +0x00050845, +0x40800000, +0x00050842, +0x10041afd, +0x39080008, +0x4c010b82, +0x10641a78, +0x48000000, +0x0005000b, 0x00060071, -0x7c810808, -0x7c810808, +0x280b0008, +0x106e0301, +0x41800000, +0x00050842, +0x1003b232, +0x39000008, +0x40800000, +0x00050842, +0x0006000b, +0x108e4300, +0x7c885840, +0x1004b232, +0x40840000, +0x00050845, +0x40800000, +0x00050842, +0x10041afc, +0x39080008, +0x4c010b82, +0x10641a78, +0x48000000, +0x0005000b, 0x00060072, -0x7c810808, -0x7c810808, +0x00000000, +0x280b0008, +0x106e0301, +0x41800000, +0x00050842, +0x1003ba34, +0x40800000, +0x00050842, +0x80030000, +0x00098200, +0x106002f1, +0x48000000, +0x00050045, 0x00060073, -0x7c810808, -0x7c810808, +0x280b0008, +0x106e0301, +0x40820000, +0x00050842, +0x1003ba34, +0x3a8efff8, +0x40800000, +0x00050842, +0x80030000, +0x00098200, +0x39800000, +0x00098200, +0x89030000, +0x00098200, +0x39200000, +0x00098200, +0x28000000, +0x820efff8, +0x106042f1, +0x7d8c489e, +0x10740321, +0x48000000, +0x00050043, 0x00060074, -0x7c810808, -0x7c810808, +0x80110000, +0x00098200, +0x81110000, +0x00098200, +0x7c004040, +0x40800001, +0x0005084b, +0x280b0008, +0x106e0301, +0x40820000, +0x00050842, +0x1003b232, +0x38910000, +0x00098200, +0x40800000, +0x00050842, +0x10001afa, +0x38a00001, +0x280000ff, +0x98040000, +0x41810000, +0x00050842, 0x00060075, -0x7c810808, -0x7c810808, -0x7c810808, +0x7e439378, +0x91d20000, +0x00098200, +0x00000000, +0x9201000c, +0x48000001, +0x00030021, +0x81d20000, +0x00098200, +0x10771a2d, +0x48000000, +0x00050045, 0x00060076, -0x7c810808, -0x7c810808, -0x7c810808, -0x7c810808, +0x80110000, +0x00098200, +0x81110000, +0x00098200, +0x7c004040, +0x40800001, +0x0005084b, +0x280b0010, +0x10ae1301, +0x106e0301, +0x41800000, +0x00050842, +0x108e0b01, +0x3920ffff, +0x41820000, +0x00050801, +0x1005b232, +0x40800000, +0x00050842, +0x11202afa, +0x0006000b, +0x1004b232, +0x40800000, +0x00050842, +0x1003ba34, +0x110022fa, +0x40800000, +0x00050842, +0x80030000, +0x00098200, +0x7c004840, +0x7cc90214, +0x41800000, +0x00050805, +0x0006000c, +0x2c080000, +0x7cc80214, +0x40810000, +0x00050807, +0x0006000d, +0x7ca84851, +0x38830000, +0x00098200, +0x38a50001, +0x7c844214, +0x7ca0281e, +0x48000000, +0x00050075, +0x0006000f, +0x7c004800, +0x38c60001, +0x7d26005e, +0x48000000, +0x0005000c, +0x00060011, +0x00000000, +0x2c860000, +0x7d00309e, +0x7d00411e, +0x39080001, +0x48000000, +0x0005000d, 0x00060077, -0x7c810808, -0x7c810808, -0x7c810808, -0x7c810808, +0x80110000, +0x00098200, +0x81110000, +0x00098200, +0x7c004040, +0x40800001, +0x0005084b, +0x280b0010, +0x106e0301, +0x108e0b01, +0x41800000, +0x00050842, +0x1004b232, +0x40800000, +0x00050842, +0x1003ba34, +0x10a022fa, +0x40800000, +0x00050842, +0x80030000, +0x00098200, +0x2c050000, +0x81110000, +0x00098200, +0x40810000, +0x00050802, +0x28000001, +0x3925ffff, +0x41800000, +0x00050802, +0x7c882840, +0x40820000, +0x00050842, +0x88030000, +0x00098200, +0x80910000, +0x00098200, +0x41840000, +0x00050842, +0x0006000b, +0x28090000, +0x7c0449ae, +0x3929ffff, +0x40820000, +0x0005080b, +0x48000000, +0x00050075, +0x0006000c, +0x38710000, +0x00098200, +0x10771a2d, +0x48000000, +0x00050045, 0x00060078, -0x7c810808, -0x7c810808, -0x7c810808, -0x7c810808, +0x00000000, +0x80110000, +0x00098200, +0x81110000, +0x00098200, +0x7c004040, +0x40800001, +0x0005084b, +0x280b0008, +0x106e0301, +0x41800000, +0x00050842, +0x1003ba34, +0x81110000, +0x00098200, +0x40800000, +0x00050842, +0x80a30000, +0x00098200, +0x38630000, +0x00098200, +0x80910000, +0x00098200, +0x39200000, +0x7c082840, +0x38c5ffff, +0x41800000, +0x00050842, +0x0006000b, +0x2c060000, +0x7d0348ae, +0x41800000, +0x00050875, +0x7d0431ae, +0x38c6ffff, +0x39290001, +0x48000000, +0x0005000b, 0x00060079, -0x7c810808, -0x7c810808, -0x7c810808, -0x7c810808, +0x80110000, +0x00098200, +0x81110000, +0x00098200, +0x7c004040, +0x40800001, +0x0005084b, +0x280b0008, +0x106e0301, +0x41800000, +0x00050842, +0x1003ba34, +0x81110000, +0x00098200, +0x40800000, +0x00050842, +0x80a30000, +0x00098200, +0x38630000, +0x00098200, +0x00000000, +0x80910000, +0x00098200, +0x7c082840, +0x39200000, +0x41800000, +0x00050842, +0x0006000b, +0x7c092840, +0x7d0348ae, +0x40800000, +0x00050875, +0x3808ffbf, +0x69060020, +0x2800001a, +0x7d06401e, +0x7d0449ae, +0x39290001, +0x48000000, +0x0005000b, 0x0006007a, -0x7c810808, -0x7c810808, -0x7c810808, -0x7c810808, +0x80110000, +0x00098200, +0x81110000, +0x00098200, +0x7c004040, +0x40800001, +0x0005084b, +0x280b0008, +0x106e0301, +0x41800000, +0x00050842, +0x1003ba34, +0x81110000, +0x00098200, +0x40800000, +0x00050842, +0x80a30000, +0x00098200, +0x38630000, +0x00098200, +0x80910000, +0x00098200, +0x7c082840, +0x39200000, +0x41800000, +0x00050842, +0x0006000b, +0x7c092840, +0x7d0348ae, +0x40800000, +0x00050875, +0x3808ff9f, +0x69060020, +0x2800001a, +0x7d06401e, +0x7d0449ae, +0x39290001, +0x48000000, +0x0005000b, 0x0006007b, -0x7c810808, +0x280b0008, +0x106e0301, +0x41800000, +0x00050842, +0x1003c234, +0x40800000, +0x00050842, +0x00000000, +0x48000001, +0x00030022, +0x10601af1, +0x48000000, +0x00050045, 0x0006007c, -0x7c810808, +0x280b0008, +0x106e0301, +0x41800000, +0x00050842, +0x1003b232, +0x40800000, +0x00050842, +0x1063dae0, 0x0006007d, -0x7c810808, -0x7c810808, -0x7c810808, +0x10601af1, +0x48000000, +0x00050045, 0x0006007e, -0x7c810808, -0x7c810808, -0x7c810808, +0x280b0008, +0x106e0301, +0x41800000, +0x00050842, +0x1003b232, +0x40800000, +0x00050842, +0x1063dae0, +0x39000008, +0x0006000b, +0x108e4300, +0x7c885840, +0x1004b232, +0x40840000, +0x0005087d, +0x40800000, +0x00050842, +0x1084dae0, +0x7c632038, +0x39080008, +0x48000000, +0x0005000b, 0x0006007f, -0x7c810808, -0x7c810808, -0x7c810808, +0x280b0008, +0x106e0301, +0x41800000, +0x00050842, +0x1003b232, +0x40800000, +0x00050842, +0x1063dae0, +0x39000008, +0x0006000b, +0x108e4300, +0x7c885840, +0x1004b232, +0x40840000, +0x0005087d, +0x40800000, +0x00050842, +0x1084dae0, +0x7c632378, +0x39080008, +0x48000000, +0x0005000b, 0x00060080, -0x7c810808, -0x7c810808, -0x7c810808, +0x00000000, +0x280b0008, +0x106e0301, +0x41800000, +0x00050842, +0x1003b232, +0x40800000, +0x00050842, +0x1063dae0, +0x39000008, +0x0006000b, +0x108e4300, +0x7c885840, +0x1004b232, +0x40840000, +0x0005087d, +0x40800000, +0x00050842, +0x1084dae0, +0x7c632278, +0x39080008, +0x48000000, +0x0005000b, 0x00060081, -0x00000000, -0x7c810808, -0x7c810808, -0x7c810808, +0x280b0008, +0x106e0301, +0x41800000, +0x00050842, +0x1003b232, +0x40800000, +0x00050842, +0x1063dae0, +0x5460403e, +0x5060c00e, +0x5060c42e, +0x106002f1, +0x48000000, +0x00050045, 0x00060082, -0x7c810808, +0x280b0008, +0x106e0301, +0x41800000, +0x00050842, +0x1003b232, +0x40800000, +0x00050842, +0x1063dae0, +0x7c6018f8, +0x106002f1, +0x48000000, +0x00050045, 0x00060083, -0x7c810808, +0x280b0010, +0x106e0301, +0x108e0b01, +0x41800000, +0x00050842, +0x1003222c, +0x1000b232, +0x40830000, +0x00050842, +0x1084dae0, +0x1063dae0, +0x548406fe, +0x7c602030, +0x106002f1, +0x48000000, +0x00050045, 0x00060084, -0x00000000, -0x7c810808, -0x00000000, +0x280b0010, +0x106e0301, +0x108e0b01, +0x41800000, +0x00050842, +0x1003222c, +0x1000b232, +0x40830000, +0x00050842, +0x1084dae0, +0x1063dae0, +0x548406fe, +0x7c602430, +0x106002f1, +0x48000000, +0x00050045, 0x00060085, -0x7c810808, +0x00000000, +0x280b0010, +0x106e0301, +0x108e0b01, +0x41800000, +0x00050842, +0x1003222c, +0x1000b232, +0x40830000, +0x00050842, +0x1084dae0, +0x1063dae0, +0x548406fe, +0x7c602630, +0x106002f1, +0x48000000, +0x00050045, 0x00060086, -0x7c810808, +0x280b0010, +0x106e0301, +0x108e0b01, +0x41800000, +0x00050842, +0x1003222c, +0x1000b232, +0x40830000, +0x00050842, +0x1084dae0, +0x1063dae0, +0x5c60203e, +0x106002f1, +0x48000000, +0x00050045, 0x00060087, -0x7c810808, +0x280b0010, +0x106e0301, +0x108e0b01, +0x41800000, +0x00050842, +0x1003222c, +0x1000b232, +0x40830000, +0x00050842, +0x1084dae0, +0x1063dae0, +0x7c8400d0, +0x5c60203e, +0x106002f1, +0x48000000, +0x00050045, +0x00060042, +0x80ca0000, +0x00098200, +0x7d0e5a14, +0x820efff8, +0x38080000, +0x00098200, +0x81320000, +0x00098200, +0x9201000c, +0x7c004840, +0x91d20000, +0x00098200, +0x91120000, +0x00098200, +0x7e439378, +0x41810000, +0x00050805, +0x7cc903a6, +0x4e800421, +0x81d20000, +0x00098200, +0x2c030000, +0x546c1800, +0x000900a1, +0x3a8efff8, +0x41810000, +0x00050843, +0x0006000b, +0x00000000, +0x80120000, +0x00098200, +0x814efffc, +0x7d6e0050, +0x40820000, +0x00050802, +0x820a0000, +0x00098200, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54f4dd78, +0x7c11402e, +0x7e947214, +0x7c0903a6, +0x4e800420, +0x0006000c, +0x72000000, +0x00090200, +0x56080038, +0x40820000, +0x00050803, +0x80f0fffc, +0x54e8dd78, +0x0006000d, +0x7d287050, +0x48000000, +0x00050024, +0x0006000f, +0x7e439378, +0x38800000, +0x00098200, +0x48000001, +0x00030000, +0x81d20000, +0x00098200, +0x7c000000, +0x48000000, +0x0005000b, +0x0006004b, +0x7ea802a6, +0x91d20000, +0x00098200, +0x7c0e5a14, +0x9201000c, +0x90120000, +0x00098200, +0x7e439378, +0x48000001, +0x00030023, +0x81d20000, +0x00098200, +0x7ea803a6, +0x80120000, +0x00098200, +0x7d6e0050, +0x814efffc, +0x4e800020, 0x00060088, 0x00000000, 0x7c810808, 0x00000000, 0x00060089, -0x7c810808, +0x88d10000, +0x00098200, +0x70c00000, +0x00090200, +0x41820000, +0x00050801, +0x0006000f, +0x39080000, +0x00098200, +0x7c11402e, +0x7c0903a6, +0x4e800420, 0x0006008a, +0x88d10000, +0x00098200, +0x81310000, +0x00098200, +0x70c00000, +0x00090200, +0x54c007c0, +0x000900ab, +0x40820000, +0x0005080f, +0x2c800000, +0x3529ffff, +0x41860000, +0x0005080f, +0x91310000, +0x00098200, +0x41820000, +0x00050801, +0x40840000, +0x0005080f, +0x0006000b, +0x7e439378, +0x92610008, +0x7e048378, +0x91d20000, +0x00098200, +0x48000001, +0x00030024, +0x0006000d, +0x81d20000, +0x00098200, +0x0006000e, 0x00000000, -0x7c810808, -0x00000000, +0x80f0fffc, +0x54e815ba, +0x54ea5d78, +0x39080000, +0x00098200, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, 0x0006008b, -0x00000000, -0x7c810808, -0x00000000, +0x3a100004, +0x826affec, +0x48000000, +0x0005000e, 0x0006008c, 0x00000000, 0x7c810808, 0x00000000, 0x0006008d, -0x7c810808, +0x7e048378, +0x00000000, +0x48000000, +0x00050001, +0x00000000, 0x0006008e, -0x7c810808, +0x00000000, +0x62040001, +0x0006000b, +0x00000000, +0x7c0e5a14, +0x9201000c, +0x7e439378, +0x91d20000, +0x00098200, +0x7e8ea050, +0x90120000, +0x00098200, +0x48000001, +0x00030025, +0x81d20000, +0x00098200, +0x80120000, +0x00098200, +0x9361000c, +0x7d6e0050, +0x7e8ea214, +0x814efffc, +0x7c6903a6, +0x4e800420, 0x0006008f, +0x00000000, 0x7c810808, +0x00000000, 0x00060090, +0x00000000, 0x7c810808, +0x00000000, 0x00060091, -0x7c810808, +0x1064222c, +0x00060058, +0x5469657e, +0x3529fc01, +0x3900ffff, +0x28890033, +0x20090034, +0x41850000, +0x00050801, +0x3cc0fff0, +0x7d000030, +0x7cc84e30, +0x7c890078, +0x7c664078, +0x7d293378, +0x7c66fe70, +0x7d293039, +0x7c840038, +0x7c634038, +0x7c002010, +0x7c04009e, +0x7d081910, +0x7d03409e, +0x1088022d, +0x4e800020, +0x0006000b, +0x4d810020, +0x5469007e, +0x7c60fe70, +0x7d292378, +0x3d003ff0, +0x7d290039, +0x38000000, +0x7d00409e, +0x5103007e, +0x1083022d, +0x4e800020, 0x00060092, -0x7c810808, +0x1064222c, +0x0006005a, +0x5469657e, +0x3529fc01, +0x3900ffff, +0x28890033, +0x20090034, +0x41850000, +0x00050801, +0x3cc0fff0, +0x7d000030, +0x7cc84e30, +0x7c890078, +0x7c664078, +0x7d293378, +0x7c66fe70, +0x7d293079, +0x7c840038, +0x7c634038, +0x7c002010, +0x7c04009e, +0x7d081910, +0x7d03409e, +0x1088022d, +0x4e800020, +0x0006000b, +0x4d810020, +0x5469007e, +0x7c60fe70, +0x7d292378, +0x3d003ff0, +0x7d290079, +0x38000000, +0x7d00409e, +0x5103007e, +0x1083022d, +0x4e800020, +0x00000000, 0x00060093, -0x7c810808, +0x1064222c, 0x00060094, -0x7c810808, +0x5469657e, +0x3529fc01, +0x3900ffff, +0x28890033, +0x20090034, +0x41850000, +0x00050801, +0x3cc0fff0, +0x7d000030, +0x7cc84e30, +0x1008022d, +0x10840211, +0x4e800020, +0x0006000b, +0x4d810020, +0x54680000, +0x38000000, +0x1088022d, +0x4e800020, +0x00000000, +0x00060093, +0x00060094, +0x00000000, 0x00060095, +0x00000000, 0x7c810808, +0x00000000, 0x00060096, +0x00000000, +0x7c810808, +0x00000000, +0x00060097, +0x1083222d, +0x28070001, +0x10c5322d, +0x41820000, +0x00050801, +0x41810000, +0x00050802, +0x108432e0, +0x1064222c, +0x4e800020, +0x0006000b, +0x108432e1, +0x1064222c, +0x4e800020, +0x0006000c, +0x28070003, +0x41820000, +0x00050801, +0x41810000, +0x00050802, +0x108432e8, +0x1064222c, +0x4e800020, +0x0006000b, +0x108432e9, +0x1064222c, +0x4e800020, +0x0006000c, +0x28070005, +0x41820000, +0x00050801, +0x41810000, +0x00050802, +0x10a42217, +0x108432e9, +0x11463217, +0x7d6802a6, +0x48000001, +0x00050091, +0x7d6803a6, +0x108452e8, +0x108522e1, +0x1064222c, +0x4e800020, +0x0006000b, +0x48000000, +0x0003001b, +0x0006000c, +0x28070007, +0x41820000, +0x00050801, +0x41810000, +0x00050802, +0x6c638000, +0x4e800020, +0x0006000b, +0x5463007e, +0x4e800020, +0x0006000c, 0x7c810808, 0x00000000, 0x00080000, 0x00000000, -0x7c810808, +0x100ea300, +0x3a100004, +0x110e6300, +0x3cd00000, +0x00098200, +0x8130fffc, +0x1140422c, +0x552993ba, +0x100ab232, +0x7d293214, +0x40830000, +0x00050833, +0x100042ed, +0x00000000, +0x108042ee, +0x4c212b82, +0x00000000, +0x7e09805e, +0x00000000, +0x7e10485e, +0x00000000, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x108ea300, +0x3a100004, +0x10ae6300, +0x3cd00000, +0x00098200, +0x8130fffc, +0x11442a2c, +0x552993ba, +0x100ab232, +0x7d293214, +0x40830000, +0x00050805, +0x10042aee, +0x00000000, +0x7e09805e, +0x00000000, +0x7e10485e, +0x00000000, +0x0006000b, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x0006000f, +0x10042a34, +0x7d4650f8, +0x28860000, +0x00090200, +0x4f830342, +0x2b060000, +0x00090200, +0x4fa02902, +0x7e158378, +0x00000000, +0x7e09875e, +0x00000000, +0x7d304f5e, +0x00000000, +0x4f9ceb82, +0x00000000, +0x7e0980de, +0x00000000, +0x7e1048de, +0x00000000, +0x419c0000, +0x0005080b, +0x41980000, +0x0005080b, +0x81240000, +0x00098200, +0x38c00000, +0x00098200, +0x28090000, +0x41820000, +0x0005080b, +0x89290000, +0x00098200, +0x71290000, +0x00090200, +0x40820000, +0x0005080b, +0x7eb0ab78, +0x48000000, +0x00050038, +0x00000000, +0x100ea300, +0x558c007e, +0x000900ab, +0x80f00000, +0x218cfffc, +0x3a100004, +0x7d0f602e, +0x3cd00000, +0x00098200, +0x54e993ba, +0x1117422d, +0x7d293214, +0x10004234, +0x00000000, +0x7e0980de, +0x00000000, +0x7e1048de, +0x00000000, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x100ea300, +0x3a100004, +0x110f6300, +0x3cd00000, +0x00098200, +0x80f0fffc, +0x1000b232, +0x40800000, +0x00050805, +0x100042ee, +0x0006000b, +0x54e993ba, +0x7d293214, +0x00000000, +0x7e09805e, +0x0006000f, +0x00000000, +0x7e10485e, +0x00000000, +0x0006000d, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x0006000f, +0x54e993ba, +0x7e093214, +0x48000000, +0x0005000d, +0x00000000, +0x7c0ea02e, +0x558800fe, +0x000900ab, +0x80f00000, +0x3a100004, +0x7d0840f8, +0x3cd00000, +0x00098200, +0x7c004040, +0x54e993ba, +0x7d293214, +0x00000000, +0x7e09809e, +0x00000000, +0x7e10489e, +0x00000000, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x100e6300, +0x111ad200, +0x80f00000, +0x10004232, +0x3a100004, +0x00000000, +0x3cd00000, +0x00098200, +0x54e993ba, +0x7d293214, +0x00000000, +0x7e09801e, +0x00000000, +0x7e10481e, +0x00000000, +0x40800000, +0x00050801, +0x00000000, +0x41800000, +0x00050801, +0x00000000, +0x3e100000, +0x00098200, +0x54e993ba, +0x100ea320, +0x7e104a14, +0x0006000b, +0x00000000, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x80f00000, +0x3a100004, +0x100e6300, +0x100ea320, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x80f00000, +0x3a100004, +0x7c0e602e, +0x21000000, +0x00098200, +0x7c004114, +0x7c0ea12e, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x100e6300, +0x1000b232, +0x40800000, +0x0005083b, +0x100002e6, +0x80f00000, +0x3a100004, +0x100ea320, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x106e6300, +0x1003ba34, +0x40800000, +0x00050802, +0x80630000, +0x00098200, +0x0006000b, +0x80f00000, +0x3a100004, +0x10001af1, +0x100ea320, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x0006000c, +0x1003c234, +0x40800000, +0x0005083d, +0x48000001, +0x00030022, +0x48000000, +0x0005000b, +0x00000000, +0x100e5300, +0x1000b232, +0x110f5b00, +0x40800000, +0x00050839, +0x00000000, +0x110e5300, +0x1008b232, +0x100f5b00, +0x40800000, +0x0005083a, +0x00000000, +0x100e5300, +0x110e5b00, +0x1120422c, +0x1009b232, +0x40830000, +0x0005083c, +0x00000000, +0x80f00000, +0x3a100004, +0x100042e0, +0x100ea320, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x100e5300, +0x1000b232, +0x110f5b00, +0x40800000, +0x00050839, +0x00000000, +0x110e5300, +0x1008b232, +0x100f5b00, +0x40800000, +0x0005083a, +0x00000000, +0x100e5300, +0x110e5b00, +0x1120422c, +0x1009b232, +0x40830000, +0x0005083c, +0x00000000, +0x80f00000, +0x3a100004, +0x100042e1, +0x100ea320, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x100e5300, +0x1000b232, +0x110f5b00, +0x40800000, +0x00050839, +0x00000000, +0x110e5300, +0x1008b232, +0x100f5b00, +0x40800000, +0x0005083a, +0x00000000, +0x100e5300, +0x110e5b00, +0x1120422c, +0x1009b232, +0x40830000, +0x0005083c, +0x00000000, +0x80f00000, +0x3a100004, +0x100042e8, +0x100ea320, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x100e5300, +0x1000b232, +0x110f5b00, +0x40800000, +0x00050839, +0x00000000, +0x110e5300, +0x1008b232, +0x100f5b00, +0x40800000, +0x0005083a, +0x00000000, +0x100e5300, +0x110e5b00, +0x1120422c, +0x1009b232, +0x40830000, +0x0005083c, +0x00000000, +0x80f00000, +0x3a100004, +0x100042e9, +0x100ea320, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x118e5300, +0x100cb232, +0x12af5b00, +0x40800000, +0x00050839, +0x00000000, +0x12ae5300, +0x1015b232, +0x118f5b00, +0x40800000, +0x0005083a, +0x00000000, +0x118e5300, +0x12ae5b00, +0x112caa2c, +0x1009b232, +0x40830000, +0x0005083c, +0x00000000, +0x00060098, +0x108caae9, +0x48000001, +0x00050091, +0x1004aae8, +0x80f00000, +0x3a100004, +0x100c02e1, +0x100ea320, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x118e5300, +0x100cb232, +0x12af5b00, +0x40800000, +0x00050839, +0x00000000, +0x12ae5300, +0x1015b232, +0x118f5b00, +0x40800000, +0x0005083a, +0x00000000, +0x118e5300, +0x12ae5b00, +0x112caa2c, +0x1009b232, +0x40830000, +0x0005083c, +0x00000000, +0x48000000, +0x00050098, +0x00000000, +0x108e5300, +0x10ce5b00, +0x1066222c, +0x1003b232, +0x10a6322c, +0x40830000, +0x0005083c, +0x48000001, +0x0003001b, +0x1083222d, +0x108ea320, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x7caa5850, +0x91d20000, +0x00098200, +0x7c8e5a14, +0x7d555378, +0x00060029, +0x9201000c, +0x7e439378, +0x54a500fe, +0x000900ab, +0x48000001, +0x00030026, +0x28030000, +0x81d20000, +0x00098200, +0x40820000, +0x00050834, +0x100eab00, +0x100ea320, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x80f00000, +0x3a100004, +0x5588007e, +0x000900ab, +0x2108fffc, +0x7c0f402e, +0x1017022d, +0x100ea320, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x558800fe, +0x000900ab, +0x7d080734, +0x80f00000, +0x3a100004, +0x100042f1, +0x100ea320, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x100f6300, +0x80f00000, +0x3a100004, +0x100ea320, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x558800fe, +0x000900ab, +0x7d0040f8, +0x80f00000, +0x3a100004, +0x7c0ea12e, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x134ea320, +0x3a940008, +0x0006000b, +0x134ea320, +0x7c146000, +0x3a940008, +0x41800000, +0x0005080b, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x80f00000, +0x3a100004, +0x814efffc, +0x558c007e, +0x000900ab, +0x398c0000, +0x00098200, +0x7d4a602e, +0x810a0000, +0x00098200, +0x10080301, +0x100ea320, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x814efffc, +0x5694007e, +0x000900ab, +0x3a940000, +0x00098200, +0x110e6300, +0x7d4aa02e, +0x88ca0000, +0x00098200, +0x808a0000, +0x00098200, +0x70c60000, +0x00090200, +0x880a0000, +0x00098200, +0x1128422c, +0x11040321, +0x28800000, +0x4c423382, +0x39290000, +0x00098200, +0x40820000, +0x00050802, +0x0006000b, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x0006000c, +0x28090000, +0x00090200, +0x40800000, +0x0005080b, +0x88c80000, +0x00098200, +0x70c60000, +0x00090200, +0x38710000, +0x00098200, +0x41820000, +0x0005080b, +0x48000001, +0x00030027, +0x48000000, +0x0005000b, +0x00000000, +0x80f00000, +0x3a100004, +0x814efffc, +0x5588007e, +0x000900ab, +0x5694007e, +0x000900ab, +0x2108fffc, +0x3a940000, +0x00098200, +0x7d0f402e, +0x7d4aa02e, +0x1117422d, +0x88ca0000, +0x00098200, +0x808a0000, +0x00098200, +0x70c60000, +0x00090200, +0x88c80000, +0x00098200, +0x892a0000, +0x00098200, +0x11040321, +0x40820000, +0x00050802, +0x0006000b, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x0006000c, +0x70c60000, +0x00090200, +0x28890000, +0x4c423202, +0x38710000, +0x00098200, +0x41820000, +0x0005080b, +0x48000001, +0x00030027, +0x48000000, +0x0005000b, +0x00000000, +0x80f00000, +0x3a100004, +0x814efffc, +0x5694007e, +0x000900ab, +0x3a940000, +0x00098200, +0x100f6300, +0x7d4aa02e, +0x810a0000, +0x00098200, +0x10080321, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x80f00000, +0x3a100004, +0x814efffc, +0x5694007e, +0x000900ab, +0x3a940000, +0x00098200, +0x558000fe, +0x000900ab, +0x7d4aa02e, +0x7c0000f8, +0x810a0000, +0x00098200, +0x90080000, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x81120000, +0x00098200, +0x5580007e, +0x000900ab, +0x7e100214, +0x3e100000, +0x00098200, +0x91d20000, +0x00098200, +0x28080000, +0x7e439378, +0x41820000, +0x00050801, +0x7c8ea214, +0x48000001, +0x00030028, +0x81d20000, +0x00098200, +0x0006000b, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x5588007e, +0x000900ab, +0x91d20000, +0x00098200, +0x2108fffc, +0x9201000c, +0x7c8f402e, +0x7e439378, +0x80aefffc, +0x48000001, +0x00030029, +0x81d20000, +0x00098200, +0x10791a2d, +0x106ea320, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x80110000, +0x00098200, +0x7e439378, +0x81110000, +0x00098200, +0x91d20000, +0x00098200, +0x7c004040, +0x9201000c, +0x40800000, +0x00050805, +0x0006000b, +0x00000000, +0x5584ed7e, +0x558596fe, +0x2c0407ff, +0x39000801, +0x7c88209e, +0x48000001, +0x0003002a, +0x00000000, +0x5588007e, +0x000900ab, +0x2108fffc, +0x7c8f402e, +0x48000001, +0x0003002b, +0x00000000, +0x81d20000, +0x00098200, +0x10781a2d, +0x106ea320, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x0006000f, +0x7d956378, +0x48000001, +0x0003002c, +0x7eacab78, +0x7e439378, +0x48000000, +0x0005000b, +0x00000000, +0x812efffc, +0x5588007e, +0x000900ab, +0x81490000, +0x00098200, +0x2108fffc, +0x7d6f402e, +0x00000000, +0x48000000, +0x00050099, +0x00000000, +0x48000000, +0x0005009a, +0x00000000, +0x114e5300, +0x116e5b00, +0x100ac234, +0x40800000, +0x0005082e, +0x100bb232, +0x40800000, +0x00050805, +0x11205af5, +0x800a0000, +0x00098200, +0x11004af1, +0x7c004840, +0x108b42ee, +0x810a0000, +0x00098200, +0x4c212a02, +0x55291800, +0x000900a1, +0x40810000, +0x0005082e, +0x11084b00, +0x1008d234, +0x41800000, +0x00050802, +0x0006000b, +0x110ea320, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x0006000c, +0x812a0000, +0x00098200, +0x28090000, +0x41820000, +0x0005080b, +0x88090000, +0x00098200, +0x70000000, +0x00090200, +0x40820000, +0x0005080b, +0x48000000, +0x0005002e, +0x0006000f, +0x100bba34, +0x41800000, +0x00050899, +0x48000000, +0x0005002e, +0x00000000, +0x114e5300, +0x5568007e, +0x000900ab, +0x100ac234, +0x2108fffc, +0x7d6f402e, +0x40800000, +0x0005082b, +0x00060099, +0x800a0000, +0x00098200, +0x810b0000, +0x00098200, +0x812a0000, +0x00098200, +0x11775a2d, +0x7d080038, +0x55002800, +0x000900a1, +0x55081800, +0x000900a1, +0x7d080050, +0x7d294214, +0x0006000b, +0x10090301, +0x00090cab, +0x11090301, +0x00090cab, +0x10005a34, +0x40830000, +0x00050804, +0x1008d234, +0x41800000, +0x00050805, +0x0006000d, +0x110ea320, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x0006000e, +0x81290000, +0x00098200, +0x28090000, +0x40820000, +0x0005080b, +0x111ad217, +0x0006000f, +0x812a0000, +0x00098200, +0x28090000, +0x41820000, +0x0005080d, +0x88090000, +0x00098200, +0x70000000, +0x00090200, +0x00000000, +0x40820000, +0x0005080d, +0x48000000, +0x0005002c, +0x00000000, +0x114e5300, +0x556000fe, +0x000900ab, +0x100ac234, +0x40800000, +0x0005082d, +0x810a0000, +0x00098200, +0x812a0000, +0x00098200, +0x7c004040, +0x40800000, +0x0005082d, +0x11095b00, +0x1008d234, +0x41800000, +0x00050805, +0x0006000b, +0x80f00000, +0x3a100004, +0x110ea320, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x0006000f, +0x812a0000, +0x00098200, +0x28090000, +0x41820000, +0x0005080b, +0x89290000, +0x00098200, +0x71290000, +0x00090200, +0x40820000, +0x0005080b, +0x48000000, +0x0005002d, +0x00000000, +0x114e5300, +0x116e5b00, +0x100ac234, +0x40800000, +0x00050832, +0x100bb232, +0x40800000, +0x00050805, +0x11205af5, +0x12aea300, +0x800a0000, +0x00098200, +0x11004af1, +0x7c004840, +0x108b42ee, +0x810a0000, +0x00098200, +0x4c212a02, +0x55201800, +0x000900a1, +0x40810000, +0x00050832, +0x88ca0000, +0x00098200, +0x11280300, +0x1009d234, +0x41800000, +0x00050803, +0x0006000b, +0x70c90000, +0x00090200, +0x12a80320, +0x40820000, +0x00050807, +0x0006000c, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x0006000d, +0x812a0000, +0x00098200, +0x28090000, +0x41820000, +0x0005080b, +0x89290000, +0x00098200, +0x71290000, +0x00090200, +0x40820000, +0x0005080b, +0x48000000, +0x00050032, +0x0006000f, +0x100bba34, +0x41800000, +0x0005089a, +0x48000000, +0x00050032, +0x00060011, +0x00000000, +0x80110000, +0x00098200, +0x54c607b8, +0x91510000, +0x00098200, +0x98ca0000, +0x00098200, +0x900a0000, +0x00098200, +0x48000000, +0x0005000c, +0x00000000, +0x114e5300, +0x5568007e, +0x000900ab, +0x100ac234, +0x2108fffc, +0x7d6f402e, +0x40800000, +0x0005082f, +0x0006009a, +0x800a0000, +0x00098200, +0x810b0000, +0x00098200, +0x812a0000, +0x00098200, +0x11775a2d, +0x9b6a0000, +0x00098200, +0x7d080038, +0x12aea300, +0x55002800, +0x000900a1, +0x55081800, +0x000900a1, +0x7d080050, +0x88ca0000, +0x00098200, +0x7d294214, +0x0006000b, +0x10090301, +0x00090cab, +0x11090301, +0x00090cab, +0x10005a34, +0x40830000, +0x00050805, +0x1008d234, +0x41800000, +0x00050804, +0x0006000c, +0x70c00000, +0x00090200, +0x12a90321, +0x00090cab, +0x40820000, +0x00050807, +0x0006000d, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x0006000e, +0x810a0000, +0x00098200, +0x00000000, +0x28080000, +0x41820000, +0x0005080c, +0x88080000, +0x00098200, +0x70000000, +0x00090200, +0x40820000, +0x0005080c, +0x48000000, +0x00050030, +0x0006000f, +0x81290000, +0x00098200, +0x28090000, +0x40820000, +0x0005080b, +0x810a0000, +0x00098200, +0x38b10000, +0x00098200, +0x9201000c, +0x7e439378, +0x28080000, +0x91d20000, +0x00098200, +0x41820000, +0x00050806, +0x88080000, +0x00098200, +0x70000000, +0x00090200, +0x41820000, +0x00050830, +0x00060010, +0x7d445378, +0x11650321, +0x48000001, +0x0003002d, +0x81d20000, +0x00098200, +0x12a30321, +0x48000000, +0x0005000d, +0x00060011, +0x80110000, +0x00098200, +0x54c607b8, +0x91510000, +0x00098200, +0x00000000, +0x98ca0000, +0x00098200, +0x900a0000, +0x00098200, +0x48000000, +0x0005000d, +0x00000000, +0x114e5300, +0x556000fe, +0x000900ab, +0x100ac234, +0x40800000, +0x00050831, +0x810a0000, +0x00098200, +0x812a0000, +0x00098200, +0x88ca0000, +0x00098200, +0x7c004040, +0x12aea300, +0x40800000, +0x00050831, +0x11095b00, +0x1008d234, +0x41800000, +0x00050805, +0x0006000b, +0x70c00000, +0x00090200, +0x12a95b20, +0x40820000, +0x00050807, +0x0006000c, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x0006000f, +0x810a0000, +0x00098200, +0x28080000, +0x41820000, +0x0005080b, +0x89080000, +0x00098200, +0x71080000, +0x00090200, +0x40820000, +0x0005080b, +0x48000000, +0x00050031, +0x00060011, +0x80110000, +0x00098200, +0x54c607b8, +0x91510000, +0x00098200, +0x98ca0000, +0x00098200, +0x00000000, +0x900a0000, +0x00098200, +0x48000000, +0x0005000c, +0x00000000, +0x7e8ea214, +0x0006000b, +0x7ccf6214, +0x8094fffc, +0x3413fff8, +0x80c60004, +0x540500fe, +0x000900ab, +0x41820000, +0x00050804, +0x7ca53214, +0x81240000, +0x00098200, +0x54c81800, +0x000900a1, +0x88c40000, +0x00098200, +0x7c054840, +0x7d340214, +0x80040000, +0x00098200, +0x41810000, +0x00050805, +0x7d080214, +0x70c00000, +0x00090200, +0x0006000d, +0x10140301, +0x3a940008, +0x7c944800, +0x10080321, +0x39080008, +0x41840000, +0x0005080d, +0x40820000, +0x00050807, +0x0006000e, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x0006000f, +0x91d20000, +0x00098200, +0x7e439378, +0x9201000c, +0x48000001, +0x0003002e, +0x48000000, +0x0005000b, +0x00060011, +0x80110000, +0x00098200, +0x54c607b8, +0x91510000, +0x00098200, +0x98ca0000, +0x00098200, +0x900a0000, +0x00098200, +0x00000000, +0x48000000, +0x0005000e, +0x00000000, +0x7d6b9a14, +0x00000000, +0x114ea300, +0x7dc97378, +0x7dcea214, +0x396bfff8, +0x100aca34, +0x39ce0008, +0x40800000, +0x00050825, +0x920efff8, +0x820a0000, +0x00098200, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54f4dd78, +0x7c11402e, +0x7e947214, +0x7c0903a6, +0x4e800420, +0x00000000, +0x7d6b9a14, +0x00000000, +0x114ea300, +0x7e8ea214, +0x810efff8, +0x396bfff8, +0x100aca34, +0x3a940008, +0x40800000, +0x0005083e, +0x0006003f, +0x71000000, +0x00090200, +0x88ca0000, +0x00098200, +0x69090000, +0x00090200, +0x288b0000, +0x40820000, +0x00050807, +0x0006000b, +0x914efffc, +0x39200000, +0x2b860001, +0x41860000, +0x00050803, +0x0006000c, +0x38c90008, +0x10144b00, +0x7c865840, +0x100e4b20, +0x7cc93378, +0x40860000, +0x0005080c, +0x0006000d, +0x4c42ea02, +0x41820000, +0x00050805, +0x0006000e, +0x820a0000, +0x00098200, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54f4dd78, +0x7c11402e, +0x7e947214, +0x7c0903a6, +0x4e800420, +0x0006000f, +0x80e8fffc, +0x54f4dd78, +0x7d147050, +0x81080000, +0x00098200, +0x81080000, +0x00098200, +0x81e80000, +0x00098200, +0x48000000, +0x0005000e, +0x00060011, +0x71200000, +0x00090200, +0x40820000, +0x0005080b, +0x00000000, +0x7dc97050, +0x810efff8, +0x71000000, +0x00090200, +0x48000000, +0x0005000b, +0x00000000, +0x3a94ffe8, +0x7dc97378, +0x114ea300, +0x7dcea214, +0x100e0b01, +0x110e1301, +0x114e1b21, +0x100aca34, +0x100e2321, +0x39600010, +0x110e2b21, +0x39ce0020, +0x40800000, +0x00050825, +0x920efff8, +0x820a0000, +0x00098200, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54f4dd78, +0x7c11402e, +0x7e947214, +0x7c0903a6, +0x4e800420, +0x00000000, +0x7e8ea214, +0x8154fff4, +0x8174fffc, +0x800a0000, +0x00098200, +0x810a0000, +0x00098200, +0x3a100004, +0x0006000b, +0x7c0b0040, +0x55661800, +0x000900a1, +0x40800000, +0x00050805, +0x11283300, +0x1009d234, +0x80f0fffc, +0x41800000, +0x00050804, +0x10005af1, +0x396b0001, +0x3cd00000, +0x00098200, +0x11340b21, +0x54e893ba, +0x9174fffc, +0x7e083214, +0x10140321, +0x0006000d, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x0006000e, +0x396b0001, +0x48000000, +0x0005000b, +0x0006000f, +0x810a0000, +0x00098200, +0x7d605850, +0x812a0000, +0x00098200, +0x00060010, +0x7c0b4040, +0x55662800, +0x000900a1, +0x41810000, +0x0005080d, +0x556a1800, +0x000900a1, +0x7cca3050, +0x11493300, +0x7cc93214, +0x100ad234, +0x80f0fffc, +0x41800000, +0x00050807, +0x10c60301, +0x00090cab, +0x3d300000, +0x00098200, +0x11540b21, +0x7d6b0214, +0x54e893ba, +0x10d40321, +0x396b0001, +0x7e084a14, +0x9174fffc, +0x48000000, +0x0005000d, +0x00060011, +0x00000000, +0x396b0001, +0x48000000, +0x00050010, +0x00000000, +0x7e8ea214, +0x3920ffe8, +0x11144b00, +0x8134fff0, +0x80d4fff8, +0x1008422c, +0x2c090000, +0x00098200, +0x2c800000, +0x00098200, +0x2f060000, +0x00098200, +0x40860000, +0x00050805, +0x89080000, +0x00098200, +0x4c42d202, +0x2f880000, +0x00098200, +0x5580007e, +0x000900ab, +0x4c42f202, +0x7cd00214, +0x40820000, +0x00050805, +0x9374fffc, +0x3e060000, +0x00098200, +0x0006000b, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x0006000f, +0x38000000, +0x00098200, +0x39000000, +0x00098200, +0x9810ffff, +0x3e060000, +0x00098200, +0x99100003, +0x48000000, +0x0005000b, +0x00000000, +0x800efff8, +0x7d6e5a14, +0x7e8ea214, +0x396b0000, +0x00098200, +0x7d345214, +0x38cefff8, +0x7d605850, +0x288a0000, +0x7d0b3051, +0x41860000, +0x00050805, +0x3929fff0, +0x40810000, +0x00050802, +0x0006000b, +0x100b0301, +0x396b0008, +0x10140321, +0x7c144840, +0x7c8b3040, +0x40800000, +0x00050803, +0x3a940008, +0x41840000, +0x0005080b, +0x0006000c, +0x13540321, +0x7c144840, +0x3a940008, +0x41800000, +0x0005080c, +0x0006000d, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x0006000f, +0x80120000, +0x00098200, +0x3a600008, +0x40810000, +0x0005080d, +0x7d344214, +0x7c090040, +0x3a680008, +0x41810000, +0x00050807, +0x00060010, +0x100b0301, +0x396b0008, +0x10140321, +0x7c0b3040, +0x3a940008, +0x41800000, +0x00050810, +0x48000000, +0x0005000d, +0x00060011, +0x7e439378, +0x92920000, +0x00098200, +0x7eae5850, +0x91d20000, +0x00098200, +0x7e8ea050, +0x9201000c, +0x550400fe, +0x000900ab, +0x48000001, +0x00030000, +0x81d20000, +0x00098200, +0x00000000, +0x7e8ea214, +0x7d6eaa14, +0x38cefff8, +0x48000000, +0x00050010, +0x00000000, +0x7d8c9a14, +0x00000000, +0x820efff8, +0x7e8ea214, +0x7d936378, +0x0006000b, +0x72000000, +0x00090200, +0x6a080000, +0x00090200, +0x40820000, +0x0005089b, +0x00060017, +0x80f0fffc, +0x2c0c0008, +0x392efff8, +0x396cfff8, +0x54ea5d78, +0x41820000, +0x00050803, +0x39000000, +0x0006000c, +0x38c80008, +0x10144300, +0x7c065800, +0x10094320, +0x41820000, +0x00050803, +0x39060008, +0x10143300, +0x7c085800, +0x10093320, +0x40820000, +0x0005080c, +0x0006000d, +0x0006000f, +0x7c0a6040, +0x54f4dd78, +0x41810000, +0x00050806, +0x7dd44850, +0x810efffc, +0x80f00000, +0x3a100004, +0x81080000, +0x00098200, +0x81e80000, +0x00098200, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00060010, +0x390cfff8, +0x398c0008, +0x13494320, +0x48000000, +0x0005000f, +0x0006009b, +0x71090000, +0x00090200, +0x40820000, +0x00050818, +0x7dc87050, +0x820efff8, +0x48000000, +0x0005000b, +0x00000000, +0x820efff8, +0x7e8ea214, +0x7d936378, +0x72000000, +0x00090200, +0x6a080000, +0x00090200, +0x40820000, +0x0005089b, +0x80f0fffc, +0x392efff8, +0x54ea5d78, +0x00000000, +0x10140301, +0x10090321, +0x00000000, +0x0006000f, +0x7c0a6040, +0x54f4dd78, +0x41810000, +0x00050806, +0x7dd44850, +0x810efffc, +0x80f00000, +0x3a100004, +0x81080000, +0x00098200, +0x81e80000, +0x00098200, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00060010, +0x390cfff8, +0x398c0008, +0x13494320, +0x48000000, +0x0005000f, 0x00000000, 0x7c810808, 0x00000000, -0x7c810808, +0x7e8ea214, +0x11140301, +0x00090cab, +0x10d40301, +0x00090cab, +0x11340301, +0x00090cab, +0x00000000, +0x1008b230, +0x1386b230, +0x1089b230, +0x4c00e382, +0x4c002382, +0x41800000, +0x00050840, +0x00000000, +0x110832e0, +0x11140321, +0x00090cab, +0x00000000, +0x1006d231, +0x11140321, +0x00090cab, +0x40800000, +0x00050802, +0x10084aec, +0x0006000b, +0x00000000, +0x558c007e, +0x000900ab, +0x7d906214, +0x00000000, +0x3e0c0000, +0x00098200, +0x00000000, +0x3d8c0000, +0x00098200, +0x00000000, +0x7e0c805e, +0x00000000, +0x7e10605e, +0x00000000, +0x40810000, +0x00070800, +0x00000000, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x0006000c, +0x100942ec, +0x48000000, +0x0005000b, 0x00000000, 0x7c810808, 0x00000000, -0x7c810808, +0x110ea300, +0x3a94fff8, +0x1008d234, +0x41800000, +0x00050801, 0x00000000, 0x7c810808, 0x00000000, -0x7c810808, +0x5580007e, +0x000900ab, +0x7e100214, +0x3e100000, +0x00098200, +0x110ea320, +0x00000000, +0x0006000b, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, 0x00000000, 0x7c810808, 0x00000000, -0x7c810808, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, 0x00000000, 0x7c810808, 0x00000000, -0x7c810808, +0x5580007e, +0x000900ab, +0x7e100214, +0x3e100000, +0x00098200, +0x80f00000, +0x3a100004, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, 0x00000000, 0x7c810808, 0x00000000, -0x7c810808, +0x81320000, +0x00098200, +0x89100000, +0x00098200, +0x81f00000, +0x00098200, +0x7c144840, +0x55081800, +0x000900a1, +0x41810000, +0x00050820, +0x80f00000, +0x3a100004, +0x0006000c, +0x7c0b4040, +0x40810000, +0x00050803, 0x00000000, 0x7c810808, 0x00000000, -0x7c810808, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x00000000, +0x0006000d, +0x134e5b20, +0x396b0008, +0x48000000, +0x0005000c, 0x00000000, 0x7c810808, 0x00000000, -0x7c810808, +0x81320000, +0x00098200, +0x7d0e5a14, +0x7c145a14, +0x91480004, +0x38cb0000, +0x00098200, +0x81f00000, +0x00098200, +0x7c004840, +0x90c80000, +0x40800000, +0x00050820, +0x89300000, +0x00098200, +0x7dd47378, +0x7d0b4378, +0x80f00000, +0x3a100004, +0x2c090000, +0x39c80008, +0x41820000, +0x00050803, +0x0006000b, +0x7c145840, +0x10140301, +0x40800000, +0x00050804, +0x13540321, +0x3a940008, +0x0006000c, +0x3529ffff, +0x10080b21, +0x39080008, +0x40820000, +0x0005080b, +0x0006000d, +0x54e815ba, +0x54ea5d78, +0x54ec9b78, +0x7c11402e, +0x54f4dd78, +0x54eb9d78, +0x7c0903a6, +0x4e800420, +0x0006000e, +0x101ad217, +0x48000000, +0x0005000c, 0x00000000, -0x7c810808, +0x80ca0000, +0x00098200, 0x00000000, -0x7c810808, +0x80d10000, +0x00098200, 0x00000000, -0x7c810808, +0x7d145a14, +0x81320000, +0x00098200, +0x7d6e5a14, +0x91d20000, +0x00098200, +0x7c084840, +0x91720000, +0x00098200, +0x38000000, +0x00098200, +0x7cc903a6, 0x00000000, -0x7c810808, +0x808a0000, +0x00098200, 0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, -0x00000000, -0x7c810808, +0x7e439378, +0x41810000, +0x0005081f, +0x90110000, +0x00098200, +0x4e800421, +0x81120000, +0x00098200, +0x546c1800, +0x000900a1, +0x81d20000, +0x00098200, +0x38000000, +0x00098200, +0x820efff8, +0x7e8c4050, +0x90110000, +0x00098200, +0x48000000, +0x00050016, 0x00000000, 0x00010000 }; enum { GLOB_vm_returnp, + GLOB_cont_dispatch, GLOB_vm_returnc, + GLOB_BC_RET_Z, GLOB_vm_return, GLOB_vm_leave_cp, GLOB_vm_leave_unw, @@ -493,18 +4938,22 @@ enum { GLOB_vm_pcall, GLOB_vm_call, GLOB_vm_call_dispatch, + GLOB_vmeta_call, GLOB_vm_call_dispatch_f, GLOB_vm_cpcall, - GLOB_cont_dispatch, GLOB_cont_cat, + GLOB_BC_CAT_Z, + GLOB_cont_nop, + GLOB_vmeta_tgets1, GLOB_vmeta_tgets, GLOB_vmeta_tgetb, GLOB_vmeta_tgetv, + GLOB_vmeta_tsets1, GLOB_vmeta_tsets, GLOB_vmeta_tsetb, GLOB_vmeta_tsetv, GLOB_vmeta_comp, - GLOB_cont_nop, + GLOB_vmeta_binop, GLOB_cont_ra, GLOB_cont_condt, GLOB_cont_condf, @@ -513,23 +4962,24 @@ enum { GLOB_vmeta_arith_nv, GLOB_vmeta_unm, GLOB_vmeta_arith_vv, - GLOB_vmeta_binop, GLOB_vmeta_len, - GLOB_vmeta_call_ra, - GLOB_vmeta_call, + GLOB_vmeta_callt, + GLOB_BC_CALLT_Z, GLOB_vmeta_for, GLOB_ff_assert, + GLOB_fff_fallback, + GLOB_fff_res, GLOB_ff_type, + GLOB_fff_restv, GLOB_ff_getmetatable, GLOB_ff_setmetatable, GLOB_ff_rawget, GLOB_ff_tonumber, GLOB_ff_tostring, + GLOB_fff_gcstep, GLOB_ff_next, - GLOB_fff_res2, GLOB_ff_pairs, GLOB_ff_ipairs_aux, - GLOB_fff_res0, GLOB_ff_ipairs, GLOB_ff_pcall, GLOB_ff_xpcall, @@ -538,9 +4988,10 @@ enum { GLOB_ff_coroutine_yield, GLOB_ff_math_abs, GLOB_fff_res1, - GLOB_fff_res, GLOB_ff_math_floor, + GLOB_vm_floor_hilo, GLOB_ff_math_ceil, + GLOB_vm_ceil_hilo, GLOB_ff_math_sqrt, GLOB_ff_math_log, GLOB_ff_math_log10, @@ -554,6 +5005,7 @@ enum { GLOB_ff_math_sinh, GLOB_ff_math_cosh, GLOB_ff_math_tanh, + GLOB_ff_math_pow, GLOB_ff_math_atan2, GLOB_ff_math_fmod, GLOB_ff_math_deg, @@ -561,7 +5013,6 @@ enum { GLOB_ff_math_ldexp, GLOB_ff_math_frexp, GLOB_ff_math_modf, - GLOB_ff_math_pow, GLOB_ff_math_min, GLOB_ff_math_max, GLOB_ff_string_len, @@ -569,27 +5020,23 @@ enum { GLOB_ff_string_char, GLOB_fff_newstr, GLOB_ff_string_sub, - GLOB_fff_emptystr, GLOB_ff_string_rep, GLOB_ff_string_reverse, GLOB_ff_string_lower, GLOB_ff_string_upper, GLOB_ff_table_getn, GLOB_ff_bit_tobit, + GLOB_fff_resbit, GLOB_ff_bit_band, GLOB_ff_bit_bor, GLOB_ff_bit_bxor, GLOB_ff_bit_bswap, GLOB_ff_bit_bnot, - GLOB_fff_resbit, - GLOB_fff_fallback_bit_op, GLOB_ff_bit_lshift, GLOB_ff_bit_rshift, GLOB_ff_bit_arshift, GLOB_ff_bit_rol, GLOB_ff_bit_ror, - GLOB_fff_fallback, - GLOB_fff_gcstep, GLOB_vm_record, GLOB_vm_rethook, GLOB_vm_inshook, @@ -602,18 +5049,21 @@ enum { GLOB_vm_floor, GLOB_vm_ceil, GLOB_vm_trunc, - GLOB_vm_mod, - GLOB_vm_exp, - GLOB_vm_exp2, - GLOB_vm_pow, - GLOB_vm_powi_sse, + GLOB_vm_trunc_hilo, + GLOB_vm_powi, GLOB_vm_foldfpm, GLOB_vm_foldarith, + GLOB_BC_MODVN_Z, + GLOB_BC_TGETS_Z, + GLOB_BC_TSETS_Z, + GLOB_BC_RETV_Z, GLOB__MAX }; static const char *const globnames[] = { "vm_returnp", + "cont_dispatch", "vm_returnc", + "BC_RET_Z", "vm_return", "vm_leave_cp", "vm_leave_unw", @@ -627,18 +5077,22 @@ static const char *const globnames[] = { "vm_pcall", "vm_call", "vm_call_dispatch", + "vmeta_call", "vm_call_dispatch_f", "vm_cpcall", - "cont_dispatch", "cont_cat", + "BC_CAT_Z", + "cont_nop", + "vmeta_tgets1", "vmeta_tgets", "vmeta_tgetb", "vmeta_tgetv", + "vmeta_tsets1", "vmeta_tsets", "vmeta_tsetb", "vmeta_tsetv", "vmeta_comp", - "cont_nop", + "vmeta_binop", "cont_ra", "cont_condt", "cont_condf", @@ -647,23 +5101,24 @@ static const char *const globnames[] = { "vmeta_arith_nv", "vmeta_unm", "vmeta_arith_vv", - "vmeta_binop", "vmeta_len", - "vmeta_call_ra", - "vmeta_call", + "vmeta_callt", + "BC_CALLT_Z", "vmeta_for", "ff_assert", + "fff_fallback", + "fff_res", "ff_type", + "fff_restv", "ff_getmetatable", "ff_setmetatable", "ff_rawget", "ff_tonumber", "ff_tostring", + "fff_gcstep", "ff_next", - "fff_res2", "ff_pairs", "ff_ipairs_aux", - "fff_res0", "ff_ipairs", "ff_pcall", "ff_xpcall", @@ -672,9 +5127,10 @@ static const char *const globnames[] = { "ff_coroutine_yield", "ff_math_abs", "fff_res1", - "fff_res", "ff_math_floor", + "vm_floor_hilo", "ff_math_ceil", + "vm_ceil_hilo", "ff_math_sqrt", "ff_math_log", "ff_math_log10", @@ -688,6 +5144,7 @@ static const char *const globnames[] = { "ff_math_sinh", "ff_math_cosh", "ff_math_tanh", + "ff_math_pow", "ff_math_atan2", "ff_math_fmod", "ff_math_deg", @@ -695,7 +5152,6 @@ static const char *const globnames[] = { "ff_math_ldexp", "ff_math_frexp", "ff_math_modf", - "ff_math_pow", "ff_math_min", "ff_math_max", "ff_string_len", @@ -703,27 +5159,23 @@ static const char *const globnames[] = { "ff_string_char", "fff_newstr", "ff_string_sub", - "fff_emptystr", "ff_string_rep", "ff_string_reverse", "ff_string_lower", "ff_string_upper", "ff_table_getn", "ff_bit_tobit", + "fff_resbit", "ff_bit_band", "ff_bit_bor", "ff_bit_bxor", "ff_bit_bswap", "ff_bit_bnot", - "fff_resbit", - "fff_fallback_bit_op", "ff_bit_lshift", "ff_bit_rshift", "ff_bit_arshift", "ff_bit_rol", "ff_bit_ror", - "fff_fallback", - "fff_gcstep", "vm_record", "vm_rethook", "vm_inshook", @@ -736,16 +5188,64 @@ static const char *const globnames[] = { "vm_floor", "vm_ceil", "vm_trunc", - "vm_mod", - "vm_exp", - "vm_exp2", - "vm_pow", - "vm_powi_sse", + "vm_trunc_hilo", + "vm_powi", "vm_foldfpm", "vm_foldarith", + "BC_MODVN_Z", + "BC_TGETS_Z", + "BC_TSETS_Z", + "BC_RETV_Z", (const char *)0 }; static const char *const extnames[] = { + "lj_state_growstack", + "lj_meta_tget", + "lj_meta_tset", + "lj_meta_comp", + "lj_meta_equal", + "lj_meta_arith", + "lj_meta_len", + "lj_meta_call", + "lj_meta_for", + "lj_tab_get", + "lj_str_fromnum", + "lj_tab_next", + "lj_tab_getinth", + "lj_ffh_coroutine_wrap_err", + "sqrt", + "log", + "log10", + "exp", + "sin", + "cos", + "tan", + "asin", + "acos", + "atan", + "sinh", + "cosh", + "tanh", + "pow", + "atan2", + "fmod", + "ldexp", + "frexp", + "modf", + "lj_str_new", + "lj_tab_len", + "lj_gc_step", + "lj_dispatch_ins", + "lj_dispatch_call", + "lj_meta_cat", + "lj_gc_barrieruv", + "lj_func_closeuv", + "lj_func_newL_gc", + "lj_tab_new", + "lj_tab_dup", + "lj_gc_step_fixtop", + "lj_tab_newkey", + "lj_tab_reasize", (const char *)0 }; #define Dt1(_V) (int)(ptrdiff_t)&(((lua_State *)0)_V) @@ -770,38 +5270,99 @@ static const char *const extnames[] = { static void build_subroutines(BuildCtx *ctx) { dasm_put(Dst, 0); - dasm_put(Dst, 1); - dasm_put(Dst, 45); - dasm_put(Dst, 91); - dasm_put(Dst, 148); - dasm_put(Dst, 204); - dasm_put(Dst, 279); + dasm_put(Dst, 1, FRAME_P, LJ_TTRUE, FRAME_TYPE, FRAME_C, ~LJ_VMST_C, Dt1(->base), DISPATCH_GL(vmstate), 31-3, Dt1(->top)); + dasm_put(Dst, 55, Dt1(->cframe), Dt1(->maxstack), Dt1(->top), 31-3, Dt1(->top), ~LJ_VMST_C, Dt1(->glref), Dt2(->vmstate)); + dasm_put(Dst, 133, LJ_TISNUM+1, LJ_TFUNC, LJ_TTAB, Dt1(->base), Dt1(->glref), LJ_TSTR, LJ_TFALSE, LJ_TNIL, ~LJ_VMST_INTERP, GG_G2DISP, DISPATCH_GL(vmstate), LUA_MINSTACK, Dt1(->base), Dt1(->top), 32-3); + dasm_put(Dst, 188, Dt1(->base), Dt1(->top), Dt7(->pc), Dt1(->glref), Dt1(->status), FRAME_CP, CFRAME_RESUME, GG_G2DISP, Dt1(->cframe), Dt1(->base), LJ_TISNUM+1, Dt1(->top), LJ_TFUNC, LJ_TTAB, LJ_TSTR, Dt1(->status), FRAME_TYPE, ~LJ_VMST_INTERP, LJ_TNIL, DISPATCH_GL(vmstate)); + dasm_put(Dst, 279, FRAME_CP, FRAME_C, Dt1(->cframe), Dt1(->cframe), Dt1(->glref), GG_G2DISP, Dt1(->base), LJ_TISNUM+1, Dt1(->top), LJ_TFUNC, LJ_TTAB, LJ_TSTR, ~LJ_VMST_INTERP, LJ_TNIL, DISPATCH_GL(vmstate)); + dasm_put(Dst, 376, Dt7(->pc), Dt1(->stack), Dt1(->top), Dt1(->cframe), Dt1(->cframe), Dt1(->glref), FRAME_CP, GG_G2DISP, Dt7(->pc), PC2PROTO(k), Dt1(->base), DISPATCH_GL(tmptv)); + dasm_put(Dst, 481, DISPATCH_GL(tmptv), DISPATCH_GL(tmptv2), DISPATCH_GL(tmptv), Dt1(->base), FRAME_CONT, Dt1(->top), DISPATCH_GL(tmptv), DISPATCH_GL(tmptv)); + dasm_put(Dst, 558, DISPATCH_GL(tmptv2), DISPATCH_GL(tmptv), Dt1(->base), FRAME_CONT, Dt1(->top), Dt1(->base), -(BCBIAS_J*4 >> 16)); + dasm_put(Dst, 638, LJ_TTRUE, LJ_TFALSE, Dt1(->base), Dt1(->base)); + dasm_put(Dst, 707, FRAME_CONT, Dt1(->base), Dt1(->base), Dt7(->pc), Dt1(->base), Dt1(->base)); #if LJ_HASJIT - dasm_put(Dst, 288); + dasm_put(Dst, 777); #endif - dasm_put(Dst, 290); + dasm_put(Dst, 779); #if LJ_HASJIT - dasm_put(Dst, 298); + dasm_put(Dst, 781, BC_JFORI); #endif - dasm_put(Dst, 300); + dasm_put(Dst, 784); #if LJ_HASJIT - dasm_put(Dst, 304); + dasm_put(Dst, 786, BC_JFORI); #endif - dasm_put(Dst, 306); + dasm_put(Dst, 789, BC_FORI, ~LJ_TNUMX, 31-3, Dt8(->upvalue), Dt6(->metatable), DISPATCH_GL(gcroot[GCROOT_MMNAME+MM_metatable])); + dasm_put(Dst, 854, Dt6(->hmask), Dt5(->hash), Dt6(->node), 31-5, 31-3, DtB(->key), DtB(->val), DtB(->next), LJ_TUDATA, 31-2, 4*~LJ_TNUMX, DISPATCH_GL(gcroot[GCROOT_BASEMT])); + dasm_put(Dst, 910, Dt6(->metatable), Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist)); + dasm_put(Dst, 970, DISPATCH_GL(gcroot[GCROOT_BASEMT_NUM]), Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->top), (2+1)*8); + dasm_put(Dst, 1043, Dt8(->upvalue[0]), (3+1)*8, Dt6(->asize), Dt6(->array), 31-3, (0+1)*8, (2+1)*8, Dt6(->hmask), (0+1)*8, (0+1)*8); + dasm_put(Dst, 1109, Dt8(->upvalue[0]), (3+1)*8, DISPATCH_GL(hookmask), 32-HOOK_ACTIVE_SHIFT, 8+FRAME_PCALL, DISPATCH_GL(hookmask), 32-HOOK_ACTIVE_SHIFT, 16+FRAME_PCALL); + dasm_put(Dst, 1173, LJ_TTHREAD, Dt1(->status), Dt1(->cframe), Dt1(->top), LUA_YIELD, Dt1(->base), Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->top), Dt1(->base), LUA_YIELD); + dasm_put(Dst, 1238, Dt1(->top), ~LJ_VMST_INTERP, Dt1(->base), DISPATCH_GL(vmstate), Dt1(->maxstack), Dt1(->top), FRAME_TYPE, LJ_TTRUE, FRAME_TYPE, LJ_TFALSE, Dt1(->top), (2+1)*8); + dasm_put(Dst, 1296, 32-3, Dt8(->upvalue[0].gcr), Dt1(->status), Dt1(->cframe), Dt1(->top), LUA_YIELD, Dt1(->base), Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->top)); + dasm_put(Dst, 1356, Dt1(->base), LUA_YIELD, Dt1(->top), ~LJ_VMST_INTERP, Dt1(->base), DISPATCH_GL(vmstate), Dt1(->maxstack), Dt1(->top), FRAME_TYPE); + dasm_put(Dst, 1416, 32-3, Dt1(->cframe), Dt1(->base), CFRAME_RESUME, Dt1(->top), LUA_YIELD, Dt1(->cframe), Dt1(->status), (1+1)*8, FRAME_TYPE); + dasm_put(Dst, 1467); + dasm_put(Dst, 1547); + dasm_put(Dst, 1610); + dasm_put(Dst, 1675); + dasm_put(Dst, 1742, Dt8(->upvalue[0]), DISPATCH_GL(tmptv), DISPATCH_GL(tmptv), (2+1)*8); + dasm_put(Dst, 1810, (2+1)*8); + dasm_put(Dst, 1881, Dt5(->len), Dt5(->len), (0+1)*8, Dt5([1]), (1+1)*8, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), DISPATCH_GL(tmptv), Dt1(->base)); + dasm_put(Dst, 1945, Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt5(->len), sizeof(GCstr)-1); + dasm_put(Dst, 2010, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt5(->len), DISPATCH_GL(tmpbuf.sz), Dt5([1]), DISPATCH_GL(tmpbuf.buf), DISPATCH_GL(strempty)); + dasm_put(Dst, 2072, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), DISPATCH_GL(tmpbuf.sz), Dt5(->len), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), DISPATCH_GL(tmpbuf.sz), Dt5(->len), sizeof(GCstr)); + dasm_put(Dst, 2131, DISPATCH_GL(tmpbuf.buf), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), DISPATCH_GL(tmpbuf.sz), Dt5(->len), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf)); + dasm_put(Dst, 2199); + dasm_put(Dst, 2265); + dasm_put(Dst, 2351, Dt8(->f), 8*LUA_MINSTACK-8, Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->base), 31-3); + dasm_put(Dst, 2430, Dt1(->top), Dt7(->pc), FRAME_TYPE, LUA_MINSTACK, Dt1(->base), Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); #if LJ_HASJIT - dasm_put(Dst, 308); + dasm_put(Dst, 2490); #endif - dasm_put(Dst, 310); + dasm_put(Dst, 2492, DISPATCH_GL(hookmask), HOOK_ACTIVE, GG_DISP2STATIC, DISPATCH_GL(hookmask), DISPATCH_GL(hookcount), HOOK_ACTIVE, 31-LUA_HOOKLINE, DISPATCH_GL(hookcount), Dt1(->base), Dt1(->base)); + dasm_put(Dst, 2539, GG_DISP2STATIC); #if LJ_HASJIT - dasm_put(Dst, 312); + dasm_put(Dst, 2557); #endif - dasm_put(Dst, 314); + dasm_put(Dst, 2559); +#if LJ_HASJIT + dasm_put(Dst, 2562); +#endif + dasm_put(Dst, 2565); +#if LJ_HASJIT + dasm_put(Dst, 2567); +#endif + dasm_put(Dst, 2570, Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); +#if LJ_HASJIT + dasm_put(Dst, 2592); +#endif + dasm_put(Dst, 2594); +#if LJ_HASJIT + dasm_put(Dst, 2596); +#endif + dasm_put(Dst, 2598); +#if LJ_HASJIT + dasm_put(Dst, 2675); +#else + dasm_put(Dst, 2698); +#endif + dasm_put(Dst, 2701); +#if LJ_HASJIT + dasm_put(Dst, 2703); +#endif + dasm_put(Dst, 2705); +#if LJ_HASJIT + dasm_put(Dst, 2707); +#endif + dasm_put(Dst, 2709); } /* Generate the code for a single instruction. */ static void build_ins(BuildCtx *ctx, BCOp op, int defop) { - dasm_put(Dst, 335, defop); + int vk = 0; + dasm_put(Dst, 2771, defop); switch (op) { @@ -810,198 +5371,372 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop) /* Remember: all ops branch for a true comparison, fall through otherwise. */ case BC_ISLT: case BC_ISGE: case BC_ISLE: case BC_ISGT: - dasm_put(Dst, 337); + dasm_put(Dst, 2773, -(BCBIAS_J*4 >> 16)); + if (op == BC_ISLE || op == BC_ISGT) { + dasm_put(Dst, 2787); + } + if (op == BC_ISLT || op == BC_ISLE) { + dasm_put(Dst, 2790); + } else { + dasm_put(Dst, 2792); + } + dasm_put(Dst, 2794); break; case BC_ISEQV: case BC_ISNEV: - dasm_put(Dst, 339); + vk = op == BC_ISEQV; + dasm_put(Dst, 2805, -(BCBIAS_J*4 >> 16)); + if (vk) { + dasm_put(Dst, 2819); + } else { + dasm_put(Dst, 2821); + } + dasm_put(Dst, 2823, ~LJ_TISPRI, ~LJ_TISTABUD); + if (vk) { + dasm_put(Dst, 2845); + } else { + dasm_put(Dst, 2847); + } + dasm_put(Dst, 2849); + if (vk) { + dasm_put(Dst, 2851); + } else { + dasm_put(Dst, 2853); + } + dasm_put(Dst, 2855, Dt6(->metatable), 1-vk, Dt6(->nomm), 1<> 16)); + if (vk) { + dasm_put(Dst, 2890); + } else { + dasm_put(Dst, 2892); + } + dasm_put(Dst, 2894); break; case BC_ISEQN: case BC_ISNEN: - dasm_put(Dst, 343); + vk = op == BC_ISEQN; + dasm_put(Dst, 2905, -(BCBIAS_J*4 >> 16)); + if (vk) { + dasm_put(Dst, 2919); + } else { + dasm_put(Dst, 2922); + } + dasm_put(Dst, 2924); + if (!vk) { + dasm_put(Dst, 2936); + } break; case BC_ISEQP: case BC_ISNEP: - dasm_put(Dst, 345); + vk = op == BC_ISEQP; + dasm_put(Dst, 2942, 32-3, -(BCBIAS_J*4 >> 16)); + if (vk) { + dasm_put(Dst, 2954); + } else { + dasm_put(Dst, 2956); + } + dasm_put(Dst, 2958); break; /* -- Unary test and copy ops ------------------------------------------- */ case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF: - dasm_put(Dst, 347); + dasm_put(Dst, 2969); + if (op == BC_IST || op == BC_ISF) { + dasm_put(Dst, 2975, -(BCBIAS_J*4 >> 16)); + if (op == BC_IST) { + dasm_put(Dst, 2980); + } else { + dasm_put(Dst, 2982); + } + } else { + if (op == BC_ISTC) { + dasm_put(Dst, 2984); + } else { + dasm_put(Dst, 2987); + } + dasm_put(Dst, 2990, -(BCBIAS_J*4 >> 16)); + } + dasm_put(Dst, 2997); break; /* -- Unary ops --------------------------------------------------------- */ case BC_MOV: - dasm_put(Dst, 349); + dasm_put(Dst, 3008); break; case BC_NOT: - dasm_put(Dst, 351); + dasm_put(Dst, 3021, LJ_TTRUE); break; case BC_UNM: - dasm_put(Dst, 353); + dasm_put(Dst, 3037); break; case BC_LEN: - dasm_put(Dst, 355); + dasm_put(Dst, 3054, Dt5(->len)); break; /* -- Binary ops -------------------------------------------------------- */ + case BC_ADDVN: case BC_ADDNV: case BC_ADDVV: - dasm_put(Dst, 357); + vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); + switch (vk) { + case 0: + dasm_put(Dst, 3082); + break; + case 1: + dasm_put(Dst, 3088); + break; + default: + dasm_put(Dst, 3094); + break; + } + dasm_put(Dst, 3101); break; case BC_SUBVN: case BC_SUBNV: case BC_SUBVV: - dasm_put(Dst, 359); + vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); + switch (vk) { + case 0: + dasm_put(Dst, 3114); + break; + case 1: + dasm_put(Dst, 3120); + break; + default: + dasm_put(Dst, 3126); + break; + } + dasm_put(Dst, 3133); break; case BC_MULVN: case BC_MULNV: case BC_MULVV: - dasm_put(Dst, 361); + vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); + switch (vk) { + case 0: + dasm_put(Dst, 3146); + break; + case 1: + dasm_put(Dst, 3152); + break; + default: + dasm_put(Dst, 3158); + break; + } + dasm_put(Dst, 3165); break; case BC_DIVVN: case BC_DIVNV: case BC_DIVVV: - dasm_put(Dst, 363); + vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); + switch (vk) { + case 0: + dasm_put(Dst, 3178); + break; + case 1: + dasm_put(Dst, 3184); + break; + default: + dasm_put(Dst, 3190); + break; + } + dasm_put(Dst, 3197); break; case BC_MODVN: - dasm_put(Dst, 365); + vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); + switch (vk) { + case 0: + dasm_put(Dst, 3210); + break; + case 1: + dasm_put(Dst, 3216); + break; + default: + dasm_put(Dst, 3222); + break; + } + dasm_put(Dst, 3229); break; case BC_MODNV: case BC_MODVV: - dasm_put(Dst, 367); + vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); + switch (vk) { + case 0: + dasm_put(Dst, 3247); + break; + case 1: + dasm_put(Dst, 3253); + break; + default: + dasm_put(Dst, 3259); + break; + } + dasm_put(Dst, 3266); break; case BC_POW: - dasm_put(Dst, 369); + dasm_put(Dst, 3269); break; case BC_CAT: - dasm_put(Dst, 371); + dasm_put(Dst, 3291, Dt1(->base), 32-3, Dt1(->base)); break; /* -- Constant ops ------------------------------------------------------ */ case BC_KSTR: - dasm_put(Dst, 373); + dasm_put(Dst, 3321, 32-1); break; case BC_KSHORT: - dasm_put(Dst, 375); + dasm_put(Dst, 3338, 32-3); break; case BC_KNUM: - dasm_put(Dst, 377); + dasm_put(Dst, 3354); break; case BC_KPRI: - dasm_put(Dst, 379); + dasm_put(Dst, 3367, 32-3); break; case BC_KNIL: - dasm_put(Dst, 381); + dasm_put(Dst, 3382); break; /* -- Upvalue and function ops ------------------------------------------ */ case BC_UGET: - dasm_put(Dst, 383); + dasm_put(Dst, 3401, 32-1, offsetof(GCfuncL, uvptr), DtA(->v)); break; case BC_USETV: - dasm_put(Dst, 385); + dasm_put(Dst, 3422, 32-1, offsetof(GCfuncL, uvptr), DtA(->marked), DtA(->v), LJ_GC_BLACK, DtA(->closed), -LJ_TISNUM, LJ_TISGCV - LJ_TISNUM, Dt4(->gch.marked), LJ_GC_WHITES, GG_DISP2G); break; case BC_USETS: - dasm_put(Dst, 387); + dasm_put(Dst, 3474, 32-1, 32-1, offsetof(GCfuncL, uvptr), DtA(->marked), DtA(->v), LJ_GC_BLACK, Dt5(->marked), DtA(->closed), LJ_GC_WHITES, GG_DISP2G); break; case BC_USETN: - dasm_put(Dst, 389); + dasm_put(Dst, 3523, 32-1, offsetof(GCfuncL, uvptr), DtA(->v)); break; case BC_USETP: - dasm_put(Dst, 391); + dasm_put(Dst, 3544, 32-1, offsetof(GCfuncL, uvptr), 32-3, DtA(->v)); break; + case BC_UCLO: - dasm_put(Dst, 393); + dasm_put(Dst, 3567, Dt1(->openupval), 32-1, -(BCBIAS_J*4 >> 16), Dt1(->base), Dt1(->base)); break; case BC_FNEW: - dasm_put(Dst, 395); + dasm_put(Dst, 3597, 32-1, Dt1(->base), Dt1(->base)); break; /* -- Table ops --------------------------------------------------------- */ case BC_TNEW: - dasm_put(Dst, 397); - break; case BC_TDUP: - dasm_put(Dst, 399); + dasm_put(Dst, 3623, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base)); + if (op == BC_TNEW) { + dasm_put(Dst, 3636); + } else { + dasm_put(Dst, 3644, 32-1); + } + dasm_put(Dst, 3651, Dt1(->base)); break; case BC_GGET: case BC_GSET: - dasm_put(Dst, 401); + dasm_put(Dst, 3674, 32-1, Dt7(->env)); + if (op == BC_GGET) { + dasm_put(Dst, 3682); + } else { + dasm_put(Dst, 3685); + } break; case BC_TGETV: - dasm_put(Dst, 403); + dasm_put(Dst, 3688, Dt6(->asize), Dt6(->array), 31-3, Dt6(->metatable), Dt6(->nomm), 1<hmask), Dt5(->hash), Dt6(->node), 31-5, 31-3, DtB(->key), DtB(->val), DtB(->next), Dt6(->metatable), Dt6(->nomm), 1<asize), Dt6(->array), Dt6(->metatable), Dt6(->nomm), 1<asize), Dt6(->array), 31-3, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->nomm), 1<marked), Dt6(->gclist)); break; case BC_TSETS: - dasm_put(Dst, 411); + dasm_put(Dst, 3938, 32-1, Dt6(->hmask), Dt5(->hash), Dt6(->node), Dt6(->nomm), 31-5, 31-3, Dt6(->marked), DtB(->key), DtB(->val), LJ_GC_BLACK, DtB(->val), Dt6(->metatable)); + dasm_put(Dst, 3999, Dt6(->nomm), 1<next), Dt6(->metatable), DISPATCH_GL(tmptv), Dt1(->base), Dt6(->nomm), 1<base), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain)); + dasm_put(Dst, 4050, Dt6(->marked), Dt6(->gclist)); break; case BC_TSETB: - dasm_put(Dst, 413); + dasm_put(Dst, 4057, 32-3, Dt6(->asize), Dt6(->array), Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->nomm), 1<marked)); + dasm_put(Dst, 4117, Dt6(->gclist)); break; case BC_TSETM: - dasm_put(Dst, 415); + dasm_put(Dst, 4122, 32-3, Dt6(->asize), 31-3, Dt6(->marked), Dt6(->array), LJ_GC_BLACK, Dt1(->base), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist)); + dasm_put(Dst, 4189); break; /* -- Calls and vararg handling ----------------------------------------- */ case BC_CALLM: - dasm_put(Dst, 417); + dasm_put(Dst, 4192); break; case BC_CALL: - dasm_put(Dst, 419); + dasm_put(Dst, 4194, Dt7(->pc)); break; case BC_CALLMT: - dasm_put(Dst, 421); + dasm_put(Dst, 4214); break; case BC_CALLT: - dasm_put(Dst, 423); + dasm_put(Dst, 4216, FRAME_TYPE, Dt7(->ffid), FRAME_VARG, Dt7(->pc), -4-8, Dt7(->pc), PC2PROTO(k), FRAME_TYPEP); + dasm_put(Dst, 4281, FRAME_TYPE); break; case BC_ITERC: - dasm_put(Dst, 425); + dasm_put(Dst, 4288, Dt7(->pc)); + break; + + case BC_ITERN: +#if LJ_HASJIT +#endif + dasm_put(Dst, 4314, Dt6(->asize), Dt6(->array), 31-3, -(BCBIAS_J*4 >> 16), Dt6(->hmask), Dt6(->node), 31-5, 31-3, DtB(->key), -(BCBIAS_J*4 >> 16)); + dasm_put(Dst, 4393); + break; + + case BC_ISNEXT: + dasm_put(Dst, 4397, LJ_TTAB, LJ_TFUNC, LJ_TNIL, Dt8(->ffid), FF_next_N, 32-1, -(BCBIAS_J*4 >> 16), BC_JMP, BC_ITERC, -(BCBIAS_J*4 >> 16)); break; case BC_VARG: - dasm_put(Dst, 427); + dasm_put(Dst, 4448, FRAME_VARG, Dt1(->maxstack), Dt1(->top), Dt1(->base), 32-3, Dt1(->base)); + dasm_put(Dst, 4528); break; /* -- Returns ----------------------------------------------------------- */ case BC_RETM: - dasm_put(Dst, 429); + dasm_put(Dst, 4534); break; case BC_RET: - dasm_put(Dst, 431); + dasm_put(Dst, 4536, FRAME_TYPE, FRAME_VARG, Dt7(->pc), PC2PROTO(k), FRAME_TYPEP); break; case BC_RET0: case BC_RET1: - dasm_put(Dst, 433); + dasm_put(Dst, 4606, FRAME_TYPE, FRAME_VARG); + if (op == BC_RET1) { + dasm_put(Dst, 4619); + } + dasm_put(Dst, 4622, Dt7(->pc), PC2PROTO(k)); break; /* -- Loops and branches ------------------------------------------------ */ case BC_FORL: #if LJ_HASJIT - dasm_put(Dst, 435); + dasm_put(Dst, 4650); #endif break; @@ -1012,12 +5747,36 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop) #endif case BC_FORI: case BC_IFORL: - dasm_put(Dst, 437); + vk = (op == BC_IFORL || op == BC_JFORL); + dasm_put(Dst, 4652, FORL_IDX*8, FORL_STEP*8, FORL_STOP*8); + if (!vk) { + dasm_put(Dst, 4660); + } + if (vk) { + dasm_put(Dst, 4668, FORL_IDX*8); + } + dasm_put(Dst, 4672, FORL_EXT*8); + if (op != BC_JFORL) { + dasm_put(Dst, 4680, 32-1); + if (op == BC_JFORI) { + dasm_put(Dst, 4684, -(BCBIAS_J*4 >> 16)); + } else { + dasm_put(Dst, 4687, -(BCBIAS_J*4 >> 16)); + } + } + if (op == BC_FORI) { + dasm_put(Dst, 4690); + } else if (op == BC_IFORL) { + dasm_put(Dst, 4692); + } else { + dasm_put(Dst, 4694, BC_JLOOP); + } + dasm_put(Dst, 4697); break; case BC_ITERL: #if LJ_HASJIT - dasm_put(Dst, 439); + dasm_put(Dst, 4712); #endif break; @@ -1026,32 +5785,40 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop) break; #endif case BC_IITERL: - dasm_put(Dst, 441); + dasm_put(Dst, 4714); + if (op == BC_JITERL) { + dasm_put(Dst, 4720); + } else { + dasm_put(Dst, 4722, 32-1, -(BCBIAS_J*4 >> 16)); + } + dasm_put(Dst, 4729); break; case BC_LOOP: - dasm_put(Dst, 443); #if LJ_HASJIT + dasm_put(Dst, 4741); #endif break; case BC_ILOOP: - dasm_put(Dst, 445); + dasm_put(Dst, 4743); break; case BC_JLOOP: - dasm_put(Dst, 447); +#if LJ_HASJIT + dasm_put(Dst, 4754); +#endif break; case BC_JMP: - dasm_put(Dst, 449); + dasm_put(Dst, 4756, 32-1, -(BCBIAS_J*4 >> 16)); break; /* -- Function headers -------------------------------------------------- */ case BC_FUNCF: #if LJ_HASJIT - dasm_put(Dst, 451); + dasm_put(Dst, 4772); #endif case BC_FUNCV: /* NYI: compiled vararg functions. */ break; @@ -1061,23 +5828,38 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop) break; #endif case BC_IFUNCF: - dasm_put(Dst, 453); + dasm_put(Dst, 4774, Dt1(->maxstack), -4+PC2PROTO(numparams), -4+PC2PROTO(k), 31-3); + if (op == BC_JFUNCF) { + dasm_put(Dst, 4792); + } else { + dasm_put(Dst, 4794); + } + dasm_put(Dst, 4803); break; case BC_JFUNCV: #if !LJ_HASJIT break; #endif - dasm_put(Dst, 455); + dasm_put(Dst, 4809); break; /* NYI: compiled vararg functions. */ case BC_IFUNCV: - dasm_put(Dst, 457); + dasm_put(Dst, 4811, Dt1(->maxstack), 8+FRAME_VARG, -4+PC2PROTO(k), -4+PC2PROTO(numparams)); break; case BC_FUNCC: case BC_FUNCCW: - dasm_put(Dst, 459); + if (op == BC_FUNCC) { + dasm_put(Dst, 4861, Dt8(->f)); + } else { + dasm_put(Dst, 4864, DISPATCH_GL(wrapf)); + } + dasm_put(Dst, 4867, Dt1(->maxstack), Dt1(->base), Dt1(->top), ~LJ_VMST_C); + if (op == BC_FUNCCW) { + dasm_put(Dst, 4880, Dt8(->f)); + } + dasm_put(Dst, 4883, DISPATCH_GL(vmstate), Dt1(->top), 31-3, Dt1(->base), ~LJ_VMST_INTERP, DISPATCH_GL(vmstate)); break; /* ---------------------------------------------------------------------- */ @@ -1097,7 +5879,7 @@ static int build_backend(BuildCtx *ctx) build_subroutines(ctx); - dasm_put(Dst, 461); + dasm_put(Dst, 4904); for (op = 0; op < BC__MAX; op++) build_ins(ctx, (BCOp)op, op); @@ -1107,7 +5889,89 @@ static int build_backend(BuildCtx *ctx) /* Emit pseudo frame-info for all assembler functions. */ static void emit_asm_debug(BuildCtx *ctx) { - /* NYI */ - UNUSED(ctx); + int i; + switch (ctx->mode) { + case BUILD_elfasm: + fprintf(ctx->fp, "\t.section .debug_frame,\"\",@progbits\n"); + fprintf(ctx->fp, + ".Lframe0:\n" + "\t.long .LECIE0-.LSCIE0\n" + ".LSCIE0:\n" + "\t.long 0xffffffff\n" + "\t.byte 0x1\n" + "\t.string \"\"\n" + "\t.uleb128 0x1\n" + "\t.sleb128 -4\n" + "\t.byte 65\n" + "\t.byte 0xc\n\t.uleb128 1\n\t.uleb128 0\n" + "\t.align 2\n" + ".LECIE0:\n\n"); + fprintf(ctx->fp, + ".LSFDE0:\n" + "\t.long .LEFDE0-.LASFDE0\n" + ".LASFDE0:\n" + "\t.long .Lframe0\n" + "\t.long .Lbegin\n" + "\t.long %d\n" + "\t.byte 0xe\n\t.uleb128 %d\n" + "\t.byte 0x11\n\t.uleb128 65\n\t.sleb128 -1\n", + (int)ctx->codesz, CFRAME_SIZE); + for (i = 14; i <= 31; i++) +#if LJ_TARGET_PPCSPE + fprintf(ctx->fp, + "\t.byte %d\n\t.uleb128 %d\n" + "\t.byte 5\n\t.uleb128 %d\n\t.uleb128 %d\n", + 0x80+i, 1+2*(31-i), 1200+i, 2+2*(31-i)); +#else +#error "missing frame info for saved registers" +#endif + fprintf(ctx->fp, + "\t.align 2\n" + ".LEFDE0:\n\n"); + fprintf(ctx->fp, "\t.section .eh_frame,\"a\",@progbits\n"); + fprintf(ctx->fp, + ".Lframe1:\n" + "\t.long .LECIE1-.LSCIE1\n" + ".LSCIE1:\n" + "\t.long 0\n" + "\t.byte 0x1\n" + "\t.string \"zPR\"\n" + "\t.uleb128 0x1\n" + "\t.sleb128 -4\n" + "\t.byte 65\n" + "\t.uleb128 6\n" /* augmentation length */ + "\t.byte 0x1b\n" /* pcrel|sdata4 */ + "\t.long lj_err_unwind_dwarf-.\n" + "\t.byte 0x1b\n" /* pcrel|sdata4 */ + "\t.byte 0xc\n\t.uleb128 1\n\t.uleb128 0\n" + "\t.align 2\n" + ".LECIE1:\n\n"); + fprintf(ctx->fp, + ".LSFDE1:\n" + "\t.long .LEFDE1-.LASFDE1\n" + ".LASFDE1:\n" + "\t.long .LASFDE1-.Lframe1\n" + "\t.long .Lbegin-.\n" + "\t.long %d\n" + "\t.uleb128 0\n" /* augmentation length */ + "\t.byte 0xe\n\t.uleb128 %d\n" + "\t.byte 0x11\n\t.uleb128 65\n\t.sleb128 -1\n", + (int)ctx->codesz, CFRAME_SIZE); + for (i = 14; i <= 31; i++) +#if LJ_TARGET_PPCSPE + fprintf(ctx->fp, + "\t.byte %d\n\t.uleb128 %d\n" + "\t.byte 5\n\t.uleb128 %d\n\t.uleb128 %d\n", + 0x80+i, 1+2*(31-i), 1200+i, 2+2*(31-i)); +#else +#error "missing frame info for saved registers" +#endif + fprintf(ctx->fp, + "\t.align 2\n" + ".LEFDE1:\n\n"); + break; + default: + break; + } }