Add support for transparent aarch64 simulation with x86 host
Do test SVE and other stuff.
Reverse of https://github.com/FEX-Emu/FEX/issues/276
@lioncash reverse of https://github.com/FEX-Emu/FEX/commit/cb17127ccbd61ff16071ab46f61602dd104151f0
@lioncash https://github.com/FEX-Emu/FEX/commit/9ea66c8d88a000f04ba5b5963e1f43dd46ea1653 should have most of what you need. Is that sufficient to unblock you?
vixl doesn't support structs or stack params for the magic host calls
I spent a couple of hours trying to hack them in, but the changes are invasive
(It maps i/o to GenericOperand, which uses CPURegister and has no easy way to represent a register pair)
now that I'm more familiar with vixl it probably can be hacked through
as a result, x87, and cpuid fails
everything else seems to work
Using the simulator
-c irjitsim should turn it on, assuming ENABLE_JIT_ARM64 has been enabled in cmake and it is built on an x86_64 host.
Running the tests with the simulator
I've added the tests with the jitsim_500_m prefix
73% tests passed, 324 tests failed out of 1214
Example test case
skmp@mangie:~/projects/FEX/build$ ctest -R jitsim_500_m/Test_TwoByte/0F_92.asm --verbose
UpdateCTestConfiguration from :/home/skmp/projects/FEX/build/DartConfiguration.tcl
Parse Config file:/home/skmp/projects/FEX/build/DartConfiguration.tcl
UpdateCTestConfiguration from :/home/skmp/projects/FEX/build/DartConfiguration.tcl
Parse Config file:/home/skmp/projects/FEX/build/DartConfiguration.tcl
Test project /home/skmp/projects/FEX/build
Constructing a list of tests
Done constructing a list of tests
Updating test list for fixtures
Added 0 tests to meet fixture requirements
Checking test dependency graph...
Checking test dependency graph end
test 6717
Start 6717: jitsim_500_m/Test_TwoByte/0F_92.asm
6717: Test command: /usr/bin/python3 "/home/skmp/projects/FEX/Scripts/testharness_runner.py" "/home/skmp/projects/FEX/unittests/ASM/Known_Failures" "/home/skmp/projects/FEX/unittests/ASM/Disabled_Tests" "/home/skmp/projects/FEX/unittests/ASM/Disabled_Tests_jit" "/home/skmp/projects/FEX/unittests/ASM/Disabled_Tests_x64" "Test_TwoByte/0F_92.asm" "/home/skmp/projects/FEX/build/Bin/TestHarnessRunner" "--no-silent" "-g" "-c" "irjitsim" "-n" "500" "--multiblock" "/home/skmp/projects/FEX/build/unittests/ASM/TwoByte/0F_92.asm.bin" "/home/skmp/projects/FEX/build/unittests/ASM/TwoByte/0F_92.asm.config.bin"
6717: Test timeout computed to be: 1500
6717: # x0: 0x00007fd5d238ebb0
6717: # x1: 0x000000000badbeef
6717: # x2: 0x000000000badbeef
6717: # x3: 0x000000000badbeef
6717: # x4: 0x000000000badbeef
6717: # x5: 0x000000000badbeef
6717: # x6: 0x000000000badbeef
6717: # x7: 0x000000000badbeef
6717: # x8: 0x000000000badbeef
6717: # x9: 0x000000000badbeef
6717: # x10: 0x000000000badbeef
6717: # x11: 0x000000000badbeef
6717: # x12: 0x000000000badbeef
6717: # x13: 0x000000000badbeef
6717: # x14: 0x000000000badbeef
6717: # x15: 0x000000000badbeef
6717: # x16: 0x000000000badbeef
6717: # x17: 0x000000000badbeef
6717: # x18: 0x000000000badbeef
6717: # x19: 0x000000000badbeef
6717: # x20: 0x000000000badbeef
6717: # x21: 0x000000000badbeef
6717: # x22: 0x000000000badbeef
6717: # x23: 0x000000000badbeef
6717: # x24: 0x000000000badbeef
6717: # x25: 0x000000000badbeef
6717: # x26: 0x000000000badbeef
6717: # x27: 0x000000000badbeef
6717: # x28: 0x000000000badbeef
6717: # x29: 0x000000000badbeef
6717: # lr: 0x0000000000000000
6717: # sp: 0x00007fd5d236d800
6717: # z0<127:0>: 0x7ff0f0007f80f0017ff0f0007f80f000
6717: # z1<127:0>: 0x7ff0f0017f80f0017ff0f0017f80f000
6717: # z2<127:0>: 0x7ff0f0027f80f0017ff0f0027f80f000
6717: # z3<127:0>: 0x7ff0f0037f80f0017ff0f0037f80f000
6717: # z4<127:0>: 0x7ff0f0047f80f0017ff0f0047f80f000
6717: # z5<127:0>: 0x7ff0f0057f80f0017ff0f0057f80f000
6717: # z6<127:0>: 0x7ff0f0067f80f0017ff0f0067f80f000
6717: # z7<127:0>: 0x7ff0f0077f80f0017ff0f0077f80f000
6717: # z8<127:0>: 0x7ff0f0087f80f0017ff0f0087f80f000
6717: # z9<127:0>: 0x7ff0f0097f80f0017ff0f0097f80f000
6717: # z10<127:0>: 0x7ff0f00a7f80f0017ff0f00a7f80f000
6717: # z11<127:0>: 0x7ff0f00b7f80f0017ff0f00b7f80f000
6717: # z12<127:0>: 0x7ff0f00c7f80f0017ff0f00c7f80f000
6717: # z13<127:0>: 0x7ff0f00d7f80f0017ff0f00d7f80f000
6717: # z14<127:0>: 0x7ff0f00e7f80f0017ff0f00e7f80f000
6717: # z15<127:0>: 0x7ff0f00f7f80f0017ff0f00f7f80f000
6717: # z16<127:0>: 0x7ff0f0107f80f0017ff0f0107f80f000
6717: # z17<127:0>: 0x7ff0f0117f80f0017ff0f0117f80f000
6717: # z18<127:0>: 0x7ff0f0127f80f0017ff0f0127f80f000
6717: # z19<127:0>: 0x7ff0f0137f80f0017ff0f0137f80f000
6717: # z20<127:0>: 0x7ff0f0147f80f0017ff0f0147f80f000
6717: # z21<127:0>: 0x7ff0f0157f80f0017ff0f0157f80f000
6717: # z22<127:0>: 0x7ff0f0167f80f0017ff0f0167f80f000
6717: # z23<127:0>: 0x7ff0f0177f80f0017ff0f0177f80f000
6717: # z24<127:0>: 0x7ff0f0187f80f0017ff0f0187f80f000
6717: # z25<127:0>: 0x7ff0f0197f80f0017ff0f0197f80f000
6717: # z26<127:0>: 0x7ff0f01a7f80f0017ff0f01a7f80f000
6717: # z27<127:0>: 0x7ff0f01b7f80f0017ff0f01b7f80f000
6717: # z28<127:0>: 0x7ff0f01c7f80f0017ff0f01c7f80f000
6717: # z29<127:0>: 0x7ff0f01d7f80f0017ff0f01d7f80f000
6717: # z30<127:0>: 0x7ff0f01e7f80f0017ff0f01e7f80f000
6717: # z31<127:0>: 0x7ff0f01f7f80f0017ff0f01f7f80f000
6717: # p0<15:0>: 0b 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
6717: # p1<15:0>: 0b 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
6717: # p2<15:0>: 0b 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0
6717: # p3<15:0>: 0b 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
6717: # p4<15:0>: 0b 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0
6717: # p5<15:0>: 0b 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1
6717: # p6<15:0>: 0b 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0
6717: # p7<15:0>: 0b 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1
6717: # p8<15:0>: 0b 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0
6717: # p9<15:0>: 0b 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1
6717: # p10<15:0>: 0b 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0
6717: # p11<15:0>: 0b 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1
6717: # p12<15:0>: 0b 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0
6717: # p13<15:0>: 0b 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1
6717: # p14<15:0>: 0b 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0
6717: # p15<15:0>: 0b 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1
6717: # FFR<15:0>: 0b 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
6717: 0x00007fd5d2ba9000 a9bf53f3 stp x19, x20, [sp, #-16]!
6717: # sp: 0x00007fd5d236d7f0
6717: # x19<63:0>: 0x000000000badbeef -> 0x00007fd5d236d7f0
6717: # x20<63:0>: 0x000000000badbeef -> 0x00007fd5d236d7f8
6717: 0x00007fd5d2ba9004 a9bf5bf5 stp x21, x22, [sp, #-16]!
6717: # sp: 0x00007fd5d236d7e0
6717: # x21<63:0>: 0x000000000badbeef -> 0x00007fd5d236d7e0
6717: # x22<63:0>: 0x000000000badbeef -> 0x00007fd5d236d7e8
6717: 0x00007fd5d2ba9008 a9bf63f7 stp x23, x24, [sp, #-16]!
6717: # sp: 0x00007fd5d236d7d0
6717: # x23<63:0>: 0x000000000badbeef -> 0x00007fd5d236d7d0
6717: # x24<63:0>: 0x000000000badbeef -> 0x00007fd5d236d7d8
6717: 0x00007fd5d2ba900c a9bf6bf9 stp x25, x26, [sp, #-16]!
6717: # sp: 0x00007fd5d236d7c0
6717: # x25<63:0>: 0x000000000badbeef -> 0x00007fd5d236d7c0
6717: # x26<63:0>: 0x000000000badbeef -> 0x00007fd5d236d7c8
6717: 0x00007fd5d2ba9010 a9bf73fb stp x27, x28, [sp, #-16]!
6717: # sp: 0x00007fd5d236d7b0
6717: # x27<63:0>: 0x000000000badbeef -> 0x00007fd5d236d7b0
6717: # x28<63:0>: 0x000000000badbeef -> 0x00007fd5d236d7b8
6717: 0x00007fd5d2ba9014 a9bf7bfd stp x29, x30, [sp, #-16]!
6717: # sp: 0x00007fd5d236d7a0
6717: # x29<63:0>: 0x000000000badbeef -> 0x00007fd5d236d7a0
6717: # lr<63:0>: 0x0000000000000000 -> 0x00007fd5d236d7a8
6717: 0x00007fd5d2ba9018 d10103ff sub sp, sp, #0x40 (64)
6717: # sp: 0x00007fd5d236d760
6717: 0x00007fd5d2ba901c 910003f3 mov x19, sp
6717: # x19: 0x00007fd5d236d760
6717: 0x00007fd5d2ba9020 0dbfa668 st4 {v8.d, v9.d, v10.d, v11.d}[0], [x19], #32
6717: # v8<127:0>: 0x7ff0f0087f80f0017ff0f0087f80f000 (..., nan)
6717: # v9<127:0>: 0x7ff0f0097f80f0017ff0f0097f80f000 (..., nan)
6717: # v10<127:0>: 0x7ff0f00a7f80f0017ff0f00a7f80f000 (..., nan)
6717: # v11<127:0>: 0x7ff0f00b7f80f0017ff0f00b7f80f000 (..., nan)
6717: # ╙─ 0x7ff0f00b7f80f000'7ff0f00a7f80f000'7ff0f0097f80f000'7ff0f0087f80f000 -> 0x00007fd5d236d760
6717: # x19: 0x00007fd5d236d780
6717: 0x00007fd5d2ba9024 0dbfa66c st4 {v12.d, v13.d, v14.d, v15.d}[0], [x19], #32
6717: # v12<127:0>: 0x7ff0f00c7f80f0017ff0f00c7f80f000 (..., nan)
6717: # v13<127:0>: 0x7ff0f00d7f80f0017ff0f00d7f80f000 (..., nan)
6717: # v14<127:0>: 0x7ff0f00e7f80f0017ff0f00e7f80f000 (..., nan)
6717: # v15<127:0>: 0x7ff0f00f7f80f0017ff0f00f7f80f000 (..., nan)
6717: # ╙─ 0x7ff0f00f7f80f000'7ff0f00e7f80f000'7ff0f00d7f80f000'7ff0f00c7f80f000 -> 0x00007fd5d236d780
6717: # x19: 0x00007fd5d236d7a0
6717: 0x00007fd5d2ba9028 aa0003fc mov x28, x0
6717: # x28: 0x00007fd5d238ebb0
6717: 0x00007fd5d2ba902c 910003e0 mov x0, sp
6717: # x0: 0x00007fd5d236d760
6717: 0x00007fd5d2ba9030 f901ef80 str x0, [x28, #984]
6717: # x0<63:0>: 0x00007fd5d236d760 -> 0x00007fd5d238ef88
6717: 0x00007fd5d2ba9034 a9409784 ldp x4, x5, [x28, #8]
6717: # x4: 0x0000000000000000 <- 0x00007fd5d238ebb8
6717: # x5: 0x0000000000000000 <- 0x00007fd5d238ebc0
6717: 0x00007fd5d2ba9038 a9419f86 ldp x6, x7, [x28, #24]
6717: # x6: 0x0000000000000000 <- 0x00007fd5d238ebc8
6717: # x7: 0x0000000000000000 <- 0x00007fd5d238ebd0
6717: 0x00007fd5d2ba903c a942a788 ldp x8, x9, [x28, #40]
6717: # x8: 0x0000000000000000 <- 0x00007fd5d238ebd8
6717: # x9: 0x0000000000000000 <- 0x00007fd5d238ebe0
6717: 0x00007fd5d2ba9040 a943af8a ldp x10, x11, [x28, #56]
6717: # x10: 0x0000000000000000 <- 0x00007fd5d238ebe8
6717: # x11: 0x00007fd5d2bab000 <- 0x00007fd5d238ebf0
6717: 0x00007fd5d2ba9044 a944cb8c ldp x12, x18, [x28, #72]
6717: # x12: 0x0000000000000000 <- 0x00007fd5d238ebf8
6717: # x18: 0x0000000000000000 <- 0x00007fd5d238ec00
6717: 0x00007fd5d2ba9048 a945c391 ldp x17, x16, [x28, #88]
6717: # x17: 0x0000000000000000 <- 0x00007fd5d238ec08
6717: # x16: 0x0000000000000000 <- 0x00007fd5d238ec10
6717: 0x00007fd5d2ba904c a946bb8f ldp x15, x14, [x28, #104]
6717: # x15: 0x0000000000000000 <- 0x00007fd5d238ec18
6717: # x14: 0x0000000000000000 <- 0x00007fd5d238ec20
6717: 0x00007fd5d2ba9050 a947f78d ldp x13, x29, [x28, #120]
6717: # x13: 0x0000000000000000 <- 0x00007fd5d238ec28
6717: # x29: 0x0000000000000000 <- 0x00007fd5d238ec30
6717: 0x00007fd5d2ba9054 3dc02b90 ldr q16, [x28, #160]
6717: # v16: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ec50
6717: 0x00007fd5d2ba9058 3dc03391 ldr q17, [x28, #192]
6717: # v17: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ec70
6717: 0x00007fd5d2ba905c 3dc03b92 ldr q18, [x28, #224]
6717: # v18: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ec90
6717: 0x00007fd5d2ba9060 3dc04393 ldr q19, [x28, #256]
6717: # v19: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ecb0
6717: 0x00007fd5d2ba9064 3dc04b94 ldr q20, [x28, #288]
6717: # v20: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ecd0
6717: 0x00007fd5d2ba9068 3dc05395 ldr q21, [x28, #320]
6717: # v21: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ecf0
6717: 0x00007fd5d2ba906c 3dc05b96 ldr q22, [x28, #352]
6717: # v22: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ed10
6717: 0x00007fd5d2ba9070 3dc06397 ldr q23, [x28, #384]
6717: # v23: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ed30
6717: 0x00007fd5d2ba9074 3dc06b98 ldr q24, [x28, #416]
6717: # v24: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ed50
6717: 0x00007fd5d2ba9078 3dc07399 ldr q25, [x28, #448]
6717: # v25: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ed70
6717: 0x00007fd5d2ba907c 3dc07b9a ldr q26, [x28, #480]
6717: # v26: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ed90
6717: 0x00007fd5d2ba9080 3dc0839b ldr q27, [x28, #512]
6717: # v27: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238edb0
6717: 0x00007fd5d2ba9084 3dc08b9c ldr q28, [x28, #544]
6717: # v28: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238edd0
6717: 0x00007fd5d2ba9088 3dc0939d ldr q29, [x28, #576]
6717: # v29: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238edf0
6717: 0x00007fd5d2ba908c 3dc09b9e ldr q30, [x28, #608]
6717: # v30: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ee10
6717: 0x00007fd5d2ba9090 3dc0a39f ldr q31, [x28, #640]
6717: # v31: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ee30
6717: 0x00007fd5d2ba9094 d503201f nop
6717: 0x00007fd5d2ba9098 d503201f nop
6717: 0x00007fd5d2ba909c d503201f nop
6717: 0x00007fd5d2ba90a0 f9400382 ldr x2, [x28]
6717: # x2: 0x0000000000010000 <- 0x00007fd5d238ebb0
6717: 0x00007fd5d2ba90a4 f9431380 ldr x0, [x28, #1568]
6717: # x0: 0x00007fd5bfb80000 <- 0x00007fd5d238f1d0
6717: 0x00007fd5d2ba90a8 92404c43 and x3, x2, #0xfffff
6717: # x3: 0x0000000000010000
6717: 0x00007fd5d2ba90ac 8b031000 add x0, x0, x3, lsl #4
6717: # x0: 0x00007fd5bfc80000
6717: 0x00007fd5d2ba90b0 a9400003 ldp x3, x0, [x0]
6717: # x3: 0x0000000000000000 <- 0x00007fd5bfc80000
6717: # x0: 0x0000000000000000 <- 0x00007fd5bfc80008
6717: 0x00007fd5d2ba90b4 eb02001f cmp x0, x2
6717: # NZCV: N:1 Z:0 C:0 V:0
6717: 0x00007fd5d2ba90b8 54000041 b.ne #+0x8 (addr 0x7fd5d2ba90c0)
6717: # Branch to 0x00007fd5d2ba90c0.
6717: 0x00007fd5d2ba90c0 f9431780 ldr x0, [x28, #1576]
6717: # x0: 0x00007fd5c8b80000 <- 0x00007fd5d238f1d8
6717: 0x00007fd5d2ba90c4 92408c43 and x3, x2, #0xfffffffff
6717: # x3: 0x0000000000010000
6717: 0x00007fd5d2ba90c8 d34cfc61 lsr x1, x3, #12
6717: # x1: 0x0000000000000010
6717: 0x00007fd5d2ba90cc f8617800 ldr x0, [x0, x1, lsl #3]
6717: # x0: 0x0000000000000000 <- 0x00007fd5c8b80080
6717: 0x00007fd5d2ba90d0 b4000ca0 cbz x0, #+0x194 (addr 0x7fd5d2ba9264)
6717: # Branch to 0x00007fd5d2ba9264.
6717: 0x00007fd5d2ba9264 a9009784 stp x4, x5, [x28, #8]
6717: # x4<63:0>: 0x0000000000000000 -> 0x00007fd5d238ebb8
6717: # x5<63:0>: 0x0000000000000000 -> 0x00007fd5d238ebc0
6717: 0x00007fd5d2ba9268 a9019f86 stp x6, x7, [x28, #24]
6717: # x6<63:0>: 0x0000000000000000 -> 0x00007fd5d238ebc8
6717: # x7<63:0>: 0x0000000000000000 -> 0x00007fd5d238ebd0
6717: 0x00007fd5d2ba926c a902a788 stp x8, x9, [x28, #40]
6717: # x8<63:0>: 0x0000000000000000 -> 0x00007fd5d238ebd8
6717: # x9<63:0>: 0x0000000000000000 -> 0x00007fd5d238ebe0
6717: 0x00007fd5d2ba9270 a903af8a stp x10, x11, [x28, #56]
6717: # x10<63:0>: 0x0000000000000000 -> 0x00007fd5d238ebe8
6717: # x11<63:0>: 0x00007fd5d2bab000 -> 0x00007fd5d238ebf0
6717: 0x00007fd5d2ba9274 a904cb8c stp x12, x18, [x28, #72]
6717: # x12<63:0>: 0x0000000000000000 -> 0x00007fd5d238ebf8
6717: # x18<63:0>: 0x0000000000000000 -> 0x00007fd5d238ec00
6717: 0x00007fd5d2ba9278 a905c391 stp x17, x16, [x28, #88]
6717: # x17<63:0>: 0x0000000000000000 -> 0x00007fd5d238ec08
6717: # x16<63:0>: 0x0000000000000000 -> 0x00007fd5d238ec10
6717: 0x00007fd5d2ba927c a906bb8f stp x15, x14, [x28, #104]
6717: # x15<63:0>: 0x0000000000000000 -> 0x00007fd5d238ec18
6717: # x14<63:0>: 0x0000000000000000 -> 0x00007fd5d238ec20
6717: 0x00007fd5d2ba9280 a907f78d stp x13, x29, [x28, #120]
6717: # x13<63:0>: 0x0000000000000000 -> 0x00007fd5d238ec28
6717: # x29<63:0>: 0x0000000000000000 -> 0x00007fd5d238ec30
6717: 0x00007fd5d2ba9284 3d802b90 str q16, [x28, #160]
6717: # v16<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ec50
6717: 0x00007fd5d2ba9288 3d803391 str q17, [x28, #192]
6717: # v17<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ec70
6717: 0x00007fd5d2ba928c 3d803b92 str q18, [x28, #224]
6717: # v18<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ec90
6717: 0x00007fd5d2ba9290 3d804393 str q19, [x28, #256]
6717: # v19<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ecb0
6717: 0x00007fd5d2ba9294 3d804b94 str q20, [x28, #288]
6717: # v20<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ecd0
6717: 0x00007fd5d2ba9298 3d805395 str q21, [x28, #320]
6717: # v21<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ecf0
6717: 0x00007fd5d2ba929c 3d805b96 str q22, [x28, #352]
6717: # v22<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ed10
6717: 0x00007fd5d2ba92a0 3d806397 str q23, [x28, #384]
6717: # v23<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ed30
6717: 0x00007fd5d2ba92a4 3d806b98 str q24, [x28, #416]
6717: # v24<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ed50
6717: 0x00007fd5d2ba92a8 3d807399 str q25, [x28, #448]
6717: # v25<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ed70
6717: 0x00007fd5d2ba92ac 3d807b9a str q26, [x28, #480]
6717: # v26<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ed90
6717: 0x00007fd5d2ba92b0 3d80839b str q27, [x28, #512]
6717: # v27<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238edb0
6717: 0x00007fd5d2ba92b4 3d808b9c str q28, [x28, #544]
6717: # v28<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238edd0
6717: 0x00007fd5d2ba92b8 3d80939d str q29, [x28, #576]
6717: # v29<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238edf0
6717: 0x00007fd5d2ba92bc 3d809b9e str q30, [x28, #608]
6717: # v30<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ee10
6717: 0x00007fd5d2ba92c0 3d80a39f str q31, [x28, #640]
6717: # v31<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ee30
6717: 0x00007fd5d2ba92c4 58003f80 ldr x0, pc+2032 (addr 0x7fd5d2ba9ab4)
6717: # x0: 0x00007fd5d238e000 <- 0x00007fd5d2ba9ab4
6717: 0x00007fd5d2ba92c8 aa1c03e1 mov x1, x28
6717: # x1: 0x00007fd5d238ebb0
6717: 0x00007fd5d2ba92cc 58003fc3 ldr x3, pc+2040 (addr 0x7fd5d2ba9ac4)
6717: # x3: 0x000055ec637af260 <- 0x00007fd5d2ba9ac4
6717: 0x00007fd5d2ba92d0 d45bd7a0 hlt #0xdebd
6717: # lr: 0x00007fd5d2ba92dc
6717: # x0: 0x00007fd5bd000020
6717: # Branch to 0x00007fd5d2ba92dc.
6717: 0x00007fd5d2ba92dc a9409784 ldp x4, x5, [x28, #8]
6717: # x4: 0x0000000000000000 <- 0x00007fd5d238ebb8
6717: # x5: 0x0000000000000000 <- 0x00007fd5d238ebc0
6717: 0x00007fd5d2ba92e0 a9419f86 ldp x6, x7, [x28, #24]
6717: # x6: 0x0000000000000000 <- 0x00007fd5d238ebc8
6717: # x7: 0x0000000000000000 <- 0x00007fd5d238ebd0
6717: 0x00007fd5d2ba92e4 a942a788 ldp x8, x9, [x28, #40]
6717: # x8: 0x0000000000000000 <- 0x00007fd5d238ebd8
6717: # x9: 0x0000000000000000 <- 0x00007fd5d238ebe0
6717: 0x00007fd5d2ba92e8 a943af8a ldp x10, x11, [x28, #56]
6717: # x10: 0x0000000000000000 <- 0x00007fd5d238ebe8
6717: # x11: 0x00007fd5d2bab000 <- 0x00007fd5d238ebf0
6717: 0x00007fd5d2ba92ec a944cb8c ldp x12, x18, [x28, #72]
6717: # x12: 0x0000000000000000 <- 0x00007fd5d238ebf8
6717: # x18: 0x0000000000000000 <- 0x00007fd5d238ec00
6717: 0x00007fd5d2ba92f0 a945c391 ldp x17, x16, [x28, #88]
6717: # x17: 0x0000000000000000 <- 0x00007fd5d238ec08
6717: # x16: 0x0000000000000000 <- 0x00007fd5d238ec10
6717: 0x00007fd5d2ba92f4 a946bb8f ldp x15, x14, [x28, #104]
6717: # x15: 0x0000000000000000 <- 0x00007fd5d238ec18
6717: # x14: 0x0000000000000000 <- 0x00007fd5d238ec20
6717: 0x00007fd5d2ba92f8 a947f78d ldp x13, x29, [x28, #120]
6717: # x13: 0x0000000000000000 <- 0x00007fd5d238ec28
6717: # x29: 0x0000000000000000 <- 0x00007fd5d238ec30
6717: 0x00007fd5d2ba92fc 3dc02b90 ldr q16, [x28, #160]
6717: # v16: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ec50
6717: 0x00007fd5d2ba9300 3dc03391 ldr q17, [x28, #192]
6717: # v17: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ec70
6717: 0x00007fd5d2ba9304 3dc03b92 ldr q18, [x28, #224]
6717: # v18: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ec90
6717: 0x00007fd5d2ba9308 3dc04393 ldr q19, [x28, #256]
6717: # v19: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ecb0
6717: 0x00007fd5d2ba930c 3dc04b94 ldr q20, [x28, #288]
6717: # v20: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ecd0
6717: 0x00007fd5d2ba9310 3dc05395 ldr q21, [x28, #320]
6717: # v21: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ecf0
6717: 0x00007fd5d2ba9314 3dc05b96 ldr q22, [x28, #352]
6717: # v22: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ed10
6717: 0x00007fd5d2ba9318 3dc06397 ldr q23, [x28, #384]
6717: # v23: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ed30
6717: 0x00007fd5d2ba931c 3dc06b98 ldr q24, [x28, #416]
6717: # v24: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ed50
6717: 0x00007fd5d2ba9320 3dc07399 ldr q25, [x28, #448]
6717: # v25: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ed70
6717: 0x00007fd5d2ba9324 3dc07b9a ldr q26, [x28, #480]
6717: # v26: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ed90
6717: 0x00007fd5d2ba9328 3dc0839b ldr q27, [x28, #512]
6717: # v27: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238edb0
6717: 0x00007fd5d2ba932c 3dc08b9c ldr q28, [x28, #544]
6717: # v28: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238edd0
6717: 0x00007fd5d2ba9330 3dc0939d ldr q29, [x28, #576]
6717: # v29: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238edf0
6717: 0x00007fd5d2ba9334 3dc09b9e ldr q30, [x28, #608]
6717: # v30: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ee10
6717: 0x00007fd5d2ba9338 3dc0a39f ldr q31, [x28, #640]
6717: # v31: 0x00000000bad0dad100000000deadbeef <- 0x00007fd5d238ee30
6717: 0x00007fd5d2ba933c 17ffff59 b #-0x29c (addr 0x7fd5d2ba90a0)
6717: # Branch to 0x00007fd5d2ba90a0.
6717: 0x00007fd5d2ba90a0 f9400382 ldr x2, [x28]
6717: # x2: 0x0000000000010000 <- 0x00007fd5d238ebb0
6717: 0x00007fd5d2ba90a4 f9431380 ldr x0, [x28, #1568]
6717: # x0: 0x00007fd5bfb80000 <- 0x00007fd5d238f1d0
6717: 0x00007fd5d2ba90a8 92404c43 and x3, x2, #0xfffff
6717: # x3: 0x0000000000010000
6717: 0x00007fd5d2ba90ac 8b031000 add x0, x0, x3, lsl #4
6717: # x0: 0x00007fd5bfc80000
6717: 0x00007fd5d2ba90b0 a9400003 ldp x3, x0, [x0]
6717: # x3: 0x00007fd5bd000020 <- 0x00007fd5bfc80000
6717: # x0: 0x0000000000010000 <- 0x00007fd5bfc80008
6717: 0x00007fd5d2ba90b4 eb02001f cmp x0, x2
6717: # NZCV: N:0 Z:1 C:1 V:0
6717: 0x00007fd5d2ba90b8 54000041 b.ne #+0x8 (addr 0x7fd5d2ba90c0)
6717: 0x00007fd5d2ba90bc d61f0060 br x3
6717: # Branch to 0x00007fd5bd000020.
6717: 0x00007fd5bd000020 d280001d mov x29, #0x0
6717: # x29: 0x0000000000000000
6717: 0x00007fd5bd000024 f2bc001d movk x29, #0xe000, lsl #16
6717: # x29: 0x00000000e0000000
6717: 0x00007fd5bd000028 d2800031 mov x17, #0x1
6717: # x17: 0x0000000000000001
6717: 0x00007fd5bd00002c d2800010 mov x16, #0x0
6717: # x16: 0x0000000000000000
6717: 0x00007fd5bd000030 d280004f mov x15, #0x2
6717: # x15: 0x0000000000000002
6717: 0x00007fd5bd000034 d29ffff4 mov x20, #0xffff
6717: # x20: 0x000000000000ffff
6717: 0x00007fd5bd000038 f2bffff4 movk x20, #0xffff, lsl #16
6717: # x20: 0x00000000ffffffff
6717: 0x00007fd5bd00003c aa1003e4 mov x4, x16
6717: # x4: 0x0000000000000000
6717: 0x00007fd5bd000040 aa1003e5 mov x5, x16
6717: # x5: 0x0000000000000000
6717: 0x00007fd5bd000044 d2800035 mov x21, #0x1
6717: # x21: 0x0000000000000001
6717: 0x00007fd5bd000048 390a9395 strb w21, [x28, #676]
6717: # x21<7:0>: 0x01 -> 0x00007fd5d238ee54
6717: 0x00007fd5bd00004c d2800035 mov x21, #0x1
6717: # x21: 0x0000000000000001
6717: 0x00007fd5bd000050 390a9f95 strb w21, [x28, #679]
6717: # x21<7:0>: 0x01 -> 0x00007fd5d238ee57
6717: 0x00007fd5bd000054 d2801ff5 mov x21, #0xff
6717: # x21: 0x00000000000000ff
6717: 0x00007fd5bd000058 9e6702a1 fmov d1, x21
6717: # d1: 0x00000000000000ff
6717: 0x00007fd5bd00005c 0e205821 cnt v1.8b, v1.8b
6717: # v1: 0x00000000000000000000000000000008
6717: 0x00007fd5bd000060 0e31b821 addv b1, v1.8b
6717: # v1: 0x00000000000000000000000000000008
6717: 0x00007fd5bd000064 0e013c35 umov w21, v1.b[0]
6717: # x21: 0x0000000000000008
6717: 0x00007fd5bd000068 d24002b5 eor x21, x21, #0x1
6717: # x21: 0x0000000000000009
6717: 0x00007fd5bd00006c d34002b5 ubfx x21, x21, #0, #1
6717: # x21: 0x0000000000000001
6717: 0x00007fd5bd000070 390a8b95 strb w21, [x28, #674]
6717: # x21<7:0>: 0x01 -> 0x00007fd5d238ee52
6717: 0x00007fd5bd000074 f100029f cmp x20, #0x0 (0)
6717: # NZCV: N:0 Z:0 C:1 V:0
6717: 0x00007fd5bd000078 9a9f17f4 cset x20, eq
6717: # x20: 0x0000000000000000
6717: 0x00007fd5bd00007c 390a9b94 strb w20, [x28, #678]
6717: # x20<7:0>: 0x00 -> 0x00007fd5d238ee56
6717: 0x00007fd5bd000080 71000a3f cmp w17, #0x2 (2)
6717: # NZCV: N:1 Z:0 C:0 V:0
6717: 0x00007fd5bd000084 9a9f27f4 cset x20, lo
6717: # x20: 0x0000000000000001
6717: 0x00007fd5bd000088 390a8394 strb w20, [x28, #672]
6717: # x20<7:0>: 0x01 -> 0x00007fd5d238ee50
6717: 0x00007fd5bd00008c d2800015 mov x21, #0x0
6717: # x21: 0x0000000000000000
6717: 0x00007fd5bd000090 390aaf95 strb w21, [x28, #683]
6717: # x21<7:0>: 0x00 -> 0x00007fd5d238ee5b
6717: 0x00007fd5bd000094 f100029f cmp x20, #0x0 (0)
6717: # NZCV: N:0 Z:0 C:1 V:0
6717: 0x00007fd5bd000098 9a9f07f5 cset x21, ne
6717: # x21: 0x0000000000000001
6717: 0x00007fd5bd00009c b3401ea4 bfxil x4, x21, #0, #8
6717: # x4: 0x0000000000000001
6717: 0x00007fd5bd0000a0 f100029f cmp x20, #0x0 (0)
6717: # NZCV: N:0 Z:0 C:1 V:0
6717: 0x00007fd5bd0000a4 9a9f17f4 cset x20, eq
6717: # x20: 0x0000000000000000
6717: 0x00007fd5bd0000a8 b3401e85 bfxil x5, x20, #0, #8
6717: # x5: 0x0000000000000000
6717: 0x00007fd5bd0000ac d2800574 mov x20, #0x2b
6717: # x20: 0x000000000000002b
6717: 0x00007fd5bd0000b0 f2a00034 movk x20, #0x1, lsl #16
6717: # x20: 0x000000000001002b
6717: 0x00007fd5bd0000b4 f9000394 str x20, [x28]
6717: # x20<63:0>: 0x000000000001002b -> 0x00007fd5d238ebb0
6717: 0x00007fd5bd0000b8 52800021 mov w1, #0x1
6717: # x1: 0x0000000000000001
6717: 0x00007fd5bd0000bc 390fb381 strb w1, [x28, #1004]
6717: # x1<7:0>: 0x01 -> 0x00007fd5d238ef9c
6717: 0x00007fd5bd0000c0 52800161 mov w1, #0xb
6717: # x1: 0x000000000000000b
6717: 0x00007fd5bd0000c4 390fb781 strb w1, [x28, #1005]
6717: # x1<7:0>: 0x0b -> 0x00007fd5d238ef9d
6717: 0x00007fd5bd0000c8 528001a1 mov w1, #0xd
6717: # x1: 0x000000000000000d
6717: 0x00007fd5bd0000cc b903f381 str w1, [x28, #1008]
6717: # x1<31:0>: 0x0000000d -> 0x00007fd5d238efa0
6717: 0x00007fd5bd0000d0 52801001 mov w1, #0x80
6717: # x1: 0x0000000000000080
6717: 0x00007fd5bd0000d4 b903fb81 str w1, [x28, #1016]
6717: # x1<31:0>: 0x00000080 -> 0x00007fd5d238efa8
6717: 0x00007fd5bd0000d8 d2800001 mov x1, #0x0
6717: # x1: 0x0000000000000000
6717: 0x00007fd5bd0000dc b903f781 str w1, [x28, #1012]
6717: # x1<31:0>: 0x00000000 -> 0x00007fd5d238efa4
6717: 0x00007fd5bd0000e0 f9430b80 ldr x0, [x28, #1552]
6717: # x0: 0x00007fd5d2ba940c <- 0x00007fd5d238f1c0
6717: 0x00007fd5bd0000e4 d61f0000 br x0
6717: # Branch to 0x00007fd5d2ba940c.
6717: 0x00007fd5d2ba940c a9009784 stp x4, x5, [x28, #8]
6717: # x4<63:0>: 0x0000000000000001 -> 0x00007fd5d238ebb8
6717: # x5<63:0>: 0x0000000000000000 -> 0x00007fd5d238ebc0
6717: 0x00007fd5d2ba9410 a9019f86 stp x6, x7, [x28, #24]
6717: # x6<63:0>: 0x0000000000000000 -> 0x00007fd5d238ebc8
6717: # x7<63:0>: 0x0000000000000000 -> 0x00007fd5d238ebd0
6717: 0x00007fd5d2ba9414 a902a788 stp x8, x9, [x28, #40]
6717: # x8<63:0>: 0x0000000000000000 -> 0x00007fd5d238ebd8
6717: # x9<63:0>: 0x0000000000000000 -> 0x00007fd5d238ebe0
6717: 0x00007fd5d2ba9418 a903af8a stp x10, x11, [x28, #56]
6717: # x10<63:0>: 0x0000000000000000 -> 0x00007fd5d238ebe8
6717: # x11<63:0>: 0x00007fd5d2bab000 -> 0x00007fd5d238ebf0
6717: 0x00007fd5d2ba941c a904cb8c stp x12, x18, [x28, #72]
6717: # x12<63:0>: 0x0000000000000000 -> 0x00007fd5d238ebf8
6717: # x18<63:0>: 0x0000000000000000 -> 0x00007fd5d238ec00
6717: 0x00007fd5d2ba9420 a905c391 stp x17, x16, [x28, #88]
6717: # x17<63:0>: 0x0000000000000001 -> 0x00007fd5d238ec08
6717: # x16<63:0>: 0x0000000000000000 -> 0x00007fd5d238ec10
6717: 0x00007fd5d2ba9424 a906bb8f stp x15, x14, [x28, #104]
6717: # x15<63:0>: 0x0000000000000002 -> 0x00007fd5d238ec18
6717: # x14<63:0>: 0x0000000000000000 -> 0x00007fd5d238ec20
6717: 0x00007fd5d2ba9428 a907f78d stp x13, x29, [x28, #120]
6717: # x13<63:0>: 0x0000000000000000 -> 0x00007fd5d238ec28
6717: # x29<63:0>: 0x00000000e0000000 -> 0x00007fd5d238ec30
6717: 0x00007fd5d2ba942c 3d802b90 str q16, [x28, #160]
6717: # v16<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ec50
6717: 0x00007fd5d2ba9430 3d803391 str q17, [x28, #192]
6717: # v17<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ec70
6717: 0x00007fd5d2ba9434 3d803b92 str q18, [x28, #224]
6717: # v18<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ec90
6717: 0x00007fd5d2ba9438 3d804393 str q19, [x28, #256]
6717: # v19<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ecb0
6717: 0x00007fd5d2ba943c 3d804b94 str q20, [x28, #288]
6717: # v20<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ecd0
6717: 0x00007fd5d2ba9440 3d805395 str q21, [x28, #320]
6717: # v21<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ecf0
6717: 0x00007fd5d2ba9444 3d805b96 str q22, [x28, #352]
6717: # v22<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ed10
6717: 0x00007fd5d2ba9448 3d806397 str q23, [x28, #384]
6717: # v23<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ed30
6717: 0x00007fd5d2ba944c 3d806b98 str q24, [x28, #416]
6717: # v24<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ed50
6717: 0x00007fd5d2ba9450 3d807399 str q25, [x28, #448]
6717: # v25<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ed70
6717: 0x00007fd5d2ba9454 3d807b9a str q26, [x28, #480]
6717: # v26<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ed90
6717: 0x00007fd5d2ba9458 3d80839b str q27, [x28, #512]
6717: # v27<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238edb0
6717: 0x00007fd5d2ba945c 3d808b9c str q28, [x28, #544]
6717: # v28<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238edd0
6717: 0x00007fd5d2ba9460 3d80939d str q29, [x28, #576]
6717: # v29<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238edf0
6717: 0x00007fd5d2ba9464 3d809b9e str q30, [x28, #608]
6717: # v30<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ee10
6717: 0x00007fd5d2ba9468 3d80a39f str q31, [x28, #640]
6717: # v31<127:0>: 0x00000000bad0dad100000000deadbeef -> 0x00007fd5d238ee30
6717: 0x00007fd5d2ba946c d2800001 mov x1, #0x0
6717: # x1: 0x0000000000000000
6717: 0x00007fd5d2ba9470 f9400021 ldr x1, [x1]
6717: Core1: GPR0: : 0x0000000000000001 == 0x0000000000000001 (Expected)
6717: Core1: GPR1: : 0x0000000000000000 == 0x0000000000000000 (Expected)
6717: [Info] Faulted? No
6717: [Info] Passed? Yes
1/1 Test #6717: jitsim_500_m/Test_TwoByte/0F_92.asm ... Passed 0.20 sec
The following tests passed:
jitsim_500_m/Test_TwoByte/0F_92.asm
100% tests passed, 0 tests failed out of 1
Total Test time (real) = 1.55 sec