Cocos Creator 1.9.0-r.c.2 iOS crash

I’ve opened my project (that works ok on Cocos Creator 1.7.0), built (“default” template) iOS target and got the following error:

JavaScriptCore`JSC::SlotVisitor::drain(WTF::MonotonicTime)::$_3::operator()(JSC::MarkStackArray&) const:
0x18a2b6fbc <+0>: stp x22, x21, [sp, #-0x30]!
0x18a2b6fc0 <+4>: stp x20, x19, [sp, #0x10]
0x18a2b6fc4 <+8>: stp x29, x30, [sp, #0x20]
0x18a2b6fc8 <+12>: add x29, sp, #0x20 ; =0x20
0x18a2b6fcc <+16>: mov x19, x1
0x18a2b6fd0 <+20>: mov x20, x0
0x18a2b6fd4 <+24>: ldr x8, [x19, #0x10]
0x18a2b6fd8 <+28>: cbnz x8, 0x18a2b7038 ; <+124>
0x18a2b6fdc <+32>: ldr x0, [x19]
0x18a2b6fe0 <+36>: ldr x8, [x0, #0x8]
0x18a2b6fe4 <+40>: cbz x8, 0x18a2b7004 ; <+72>
0x18a2b6fe8 <+44>: cbz x0, 0x18a2b7020 ; <+100>
0x18a2b6fec <+48>: ldp x8, x9, [x0]
0x18a2b6ff0 <+52>: cbz x8, 0x18a2b700c ; <+80>
0x18a2b6ff4 <+56>: str x9, [x8, #0x8]
0x18a2b6ff8 <+60>: ldr x9, [x0, #0x8]
0x18a2b6ffc <+64>: cbnz x9, 0x18a2b7014 ; <+88>
0x18a2b7000 <+68>: b 0x18a2b701c ; <+96>
0x18a2b7004 <+72>: mov w0, #0x0
0x18a2b7008 <+76>: b 0x18a2b714c ; <+400>
0x18a2b700c <+80>: str x9, [x19]
0x18a2b7010 <+84>: cbz x9, 0x18a2b701c ; <+96>
0x18a2b7014 <+88>: str x8, [x9]
0x18a2b7018 <+92>: b 0x18a2b7020 ; <+100>
0x18a2b701c <+96>: str x8, [x19, #0x8]
0x18a2b7020 <+100>: bl 0x189a5f6b8 ; WTF::fastFree(void*)
0x18a2b7024 <+104>: ldr x8, [x19, #0x18]
0x18a2b7028 <+108>: sub x8, x8, #0x1 ; =0x1
0x18a2b702c <+112>: str x8, [x19, #0x18]
0x18a2b7030 <+116>: orr w8, wzr, #0x1fe
0x18a2b7034 <+120>: str x8, [x19, #0x10]
0x18a2b7038 <+124>: cmp x20, x19
0x18a2b703c <+128>: cset w9, eq
0x18a2b7040 <+132>: strb w9, [x20, #0xa8]
0x18a2b7044 <+136>: adrp x9, 171828
0x18a2b7048 <+140>: add x9, x9, #0xf90 ; =0xf90
0x18a2b704c <+144>: ldr w9, [x9, #0x1260]
0x18a2b7050 <+148>: orr w0, wzr, #0x1
0x18a2b7054 <+152>: cmp w9, #0x0 ; =0x0
0x18a2b7058 <+156>: ccmp x8, #0x0, #0x4, ne
0x18a2b705c <+160>: b.eq 0x18a2b714c ; <+400>
0x18a2b7060 <+164>: sub w22, w0, w9
0x18a2b7064 <+168>: b 0x18a2b707c ; <+192>
0x18a2b7068 <+172>: ldrb w8, [x20, #0xa8]
0x18a2b706c <+176>: cbz w8, 0x18a2b7134 ; <+376>
0x18a2b7070 <+180>: mov x1, x21
0x18a2b7074 <+184>: bl 0x189fe1f8c ; JSC::HeapSnapshotBuilder::appendNode(JSC::JSCell*)
0x18a2b7078 <+188>: b 0x18a2b7134 ; <+376>
0x18a2b707c <+192>: ldr x9, [x19]
0x18a2b7080 <+196>: sub x8, x8, #0x1 ; =0x1
0x18a2b7084 <+200>: add x9, x9, x8, lsl #3
0x18a2b7088 <+204>: str x8, [x19, #0x10]
0x18a2b708c <+208>: ldr x21, [x9, #0x10]
0x18a2b7090 <+212>: str x21, [x20, #0xa0]
0x18a2b7094 <+216>: strb wzr, [x21, #0x7]
0x18a2b7098 <+220>: dmb ish
0x18a2b709c <+224>: ldrb w8, [x21, #0x5]
0x18a2b70a0 <+228>: cmp w8, #0x22 ; =0x22
0x18a2b70a4 <+232>: b.eq 0x18a2b70d0 ; <+276>
0x18a2b70a8 <+236>: cmp w8, #0x18 ; =0x18
0x18a2b70ac <+240>: b.eq 0x18a2b70e8 ; <+300>
0x18a2b70b0 <+244>: cmp w8, #0x6 ; =0x6
0x18a2b70b4 <+248>: b.ne 0x18a2b7100 ; <+324>
0x18a2b70b8 <+252>: mov x0, x21
0x18a2b70bc <+256>: mov x1, x20
0x18a2b70c0 <+260>: bl 0x189a6f6d8 ; JSC::JSString::visitChildren(JSC::JSCell*, JSC::SlotVisitor&)
0x18a2b70c4 <+264>: ldr x0, [x20, #0x98]
0x18a2b70c8 <+268>: cbz x0, 0x18a2b7134 ; <+376>
0x18a2b70cc <+272>: b 0x18a2b7068 ; <+172>
0x18a2b70d0 <+276>: mov x0, x21
0x18a2b70d4 <+280>: mov x1, x20
0x18a2b70d8 <+284>: bl 0x189b09adc ; JSC::JSObject::visitChildren(JSC::JSCell*, JSC::SlotVisitor&)
0x18a2b70dc <+288>: ldr x0, [x20, #0x98]
0x18a2b70e0 <+292>: cbz x0, 0x18a2b7134 ; <+376>
0x18a2b70e4 <+296>: b 0x18a2b7068 ; <+172>
0x18a2b70e8 <+300>: mov x0, x21
0x18a2b70ec <+304>: mov x1, x20
0x18a2b70f0 <+308>: bl 0x189b0b274 ; JSC::JSFinalObject::visitChildren(JSC::JSCell*, JSC::SlotVisitor&)
0x18a2b70f4 <+312>: ldr x0, [x20, #0x98]
0x18a2b70f8 <+316>: cbz x0, 0x18a2b7134 ; <+376>
0x18a2b70fc <+320>: b 0x18a2b7068 ; <+172>
0x18a2b7100 <+324>: ldr x8, [x20, #0x90]
0x18a2b7104 <+328>: ldr x8, [x8, #0x350]
0x18a2b7108 <+332>: ldr w9, [x21]
0x18a2b710c <+336>: ldr x8, [x8, #0xf0]
0x18a2b7110 <+340>: and x9, x9, #0x7fffffff
0x18a2b7114 <+344>: ldr x8, [x8, x9, lsl #3]
-> 0x18a2b7118 <+348>: ldr x8, [x8, #0x40]
0x18a2b711c <+352>: ldr x8, [x8, #0x28]
0x18a2b7120 <+356>: mov x0, x21
0x18a2b7124 <+360>: mov x1, x20
0x18a2b7128 <+364>: blr x8
0x18a2b712c <+368>: ldr x0, [x20, #0x98]
0x18a2b7130 <+372>: cbnz x0, 0x18a2b7068 ; <+172>
0x18a2b7134 <+376>: str xzr, [x20, #0xa0]
0x18a2b7138 <+380>: orr w0, wzr, #0x1
0x18a2b713c <+384>: cbz w22, 0x18a2b714c ; <+400>
0x18a2b7140 <+388>: ldr x8, [x19, #0x10]
0x18a2b7144 <+392>: add w22, w22, #0x1 ; =0x1
0x18a2b7148 <+396>: cbnz x8, 0x18a2b707c ; <+192>
0x18a2b714c <+400>: ldp x29, x30, [sp, #0x20]
0x18a2b7150 <+404>: ldp x20, x19, [sp, #0x10]
0x18a2b7154 <+408>: ldp x22, x21, [sp], #0x30
0x18a2b7158 <+412>: ret

P.S.: in web version it works ok.

1.9rc2? Where did you got this version?

1 Like

I will ping engineering about this as well.

1.9rc2 is an unstable version for QQ app (actually not really rc). We will release 1.8.2 soon, it should fix lots of iOS crash. (and don’t use 1.8.2-rc.2)

Hi,

Can we know the specific reason/s for not using 1.8.2-rc.2.
If any particular module is unstable, or generally?

Aha, it just because rc.2 still includes some JSB bugs on iOS.