ARM64 Dynarec 'mov %al,%fs:0xfffffffffffffe44' not implemented
Hi, it seems that 'MOV FS:Eb, Gb' was not implemented in the ARM64 dynarec. There are implementations for RV64 and Box86 (assuming I understand this code correctly).
Here is the output from running Minecraft bedrock server on a Pi4.
0x1071ba8d2: Dynarec stopped because of Opcode 64 88 04 25 91 FE FF FF 0F B6 47 48 A8 01 0F
0x1071ba8d2: Dynarec stopped because of Opcode 64 88 04 25 91 FE FF FF 0F B6 47 48 A8 01 0F
0x1071bb628: Dynarec stopped because of Opcode 64 88 04 25 91 FE FF FF 0F B6 86 D3 11 00 00
0x1071bb628: Dynarec stopped because of Opcode 64 88 04 25 91 FE FF FF 0F B6 86 D3 11 00 00
0x1071bcbb9: Dynarec stopped because of Opcode 64 88 04 25 91 FE FF FF 48 8D 7C 24 50 E8 95
0x1071bb0f8: Dynarec stopped because of Opcode 64 88 04 25 91 FE FF FF 0F B6 86 D3 11 00 00
0x1071bb0f8: Dynarec stopped because of Opcode 64 88 04 25 91 FE FF FF 0F B6 86 D3 11 00 00
(Edit: while using BOX64_DYNAREC_MISSING=1)
running through objdump it looks like the instructions are mov %al,%fs:0xfffffffffffffe44
0x107465f6a: Dynarec stopped because of x64 Opcode 64 88 04 25 44 FE FF FF 41 0F B6 46 48 A8 01
7465f6a: 64 88 04 25 44 fe ff mov %al,%fs:0xfffffffffffffe44
The opcode has been added some time ago, you can update and try again/
Hi @ptitSeb, I've run with a recent build of Box64 on ARM and unfortunately I'm still seeing the logged errors.
Box64 with Dynarec v0.3.1 baa3f573 built on Oct 5 2024 06:36:24
bedrock_server Version: 1.21.31.04
0x10779bb6a: Dynarec stopped because of x64 Opcode 64 88 04 25 44 FE FF FF 41 0F B6 46 48 A8 01
0x10779bb6a: Dynarec stopped because of x64 Opcode 64 88 04 25 44 FE FF FF 41 0F B6 46 48 A8 01
0x10779c8df: Dynarec stopped because of x64 Opcode 64 88 04 25 44 FE FF FF 4C 89 E7 E8 B1 66 24
0x10779c8df: Dynarec stopped because of x64 Opcode 64 88 04 25 44 FE FF FF 4C 89 E7 E8 B1 66 24
0x10779cf4e: Dynarec stopped because of x64 Opcode 64 88 04 25 44 FE FF FF E8 45 54 76 FB 48 89
0x10779c3bf: Dynarec stopped because of x64 Opcode 64 88 04 25 44 FE FF FF 48 89 DF E8 D1 6B 24
0x10779c3bf: Dynarec stopped because of x64 Opcode 64 88 04 25 44 FE FF FF 48 89 DF E8 D1 6B 24
Ah yeah, sorry, I added 64 8A opcode earlier, instead of 64 88 (I was confused by the dump that as at&t assembly style, while I'm used to the intel style).
Anyway, it's added now.
Thank you so much. Closed with 2ef6011c7ae