Open
Description
Version and Platform (required)
- Binary Ninja Version: 4.2.6339-dev (d021f9d4)
Bug Description
The following ARM intrinsics are unimplemented in the latest dev release:
Multiply/divide instructions
smlabb
stc2
stcl
umaal
Sync Primitives
clrex
strex
SIMD&FP Instructions
vcmp.f64.F64
vcvt.f32.f64
vcvt.F32.U32
vcvt.f64.f32
vcvt.U32.F32
vld1.32
vld1.64
vld1.8
vldmia
vmrs
vqrshrun.S64
vqshl.U32
vqshlu.S32
vqshrn.U64
vrecpe.f32.F32
vrev16.64
vrhadd.U16
vrshr.U64
vrsra.U64
vshr.U32
vsli.32
vsli.64
vst1.32
vst1.64
vst1.8
vstmia
vtbl.8
Binary
- Binary was provided via e-mail.
The following functions use the unimplemented intrinsics
_Z15ltc_eax_encryptPK21ltc_cipher_descriptorNSt6__ndk112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEES8_PKhPhj:
unimplemented {vst1.64 {d16, d17}, [r0]!}
unimplemented {vst1.64 {d16, d17}, [r0]}
unimplemented {vst1.64 {d16, d17}, [r1]!}
unimplemented {vst1.64 {d16, d17}, [r1]}
_Z8IntToStri:
unimplemented {vst1.32 {d16, d17}, [r1]}
_Z10hw_decryptNSt6__ndk112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPKhPhm:
unimplemented {vst1.8 {d16}, [r1]}
Java_com_hobbywing_jni_Util_parse:
unimplemented {vld1.8 {d16, d17}, [r1]}
unimplemented {vld1.8 {d18, d19}, [r1]}
unimplemented {vst1.8 {d16, d17}, [r1]!}
unimplemented {vst1.8 {d18, d19}, [r1]}
md5_init:
unimplemented {vld1.64 {d16, d17}, [r0]}
unimplemented {vst1.64 {d16, d17}, [r0]}
md5_test:
unimplemented {vld1.64 {d8, d9}, [r0]}
unimplemented {vst1.64 {d8, d9}, [r1]}
fast_mp_invmod:
unimplemented {vld1.64 {d16, d17}, [r6]}
unimplemented {vst1.64 {d16, d17}, [r0]}
unimplemented {vld1.32 {d18, d19}, [r4]}
unimplemented {vst1.32 {d16, d17}, [r4], r0}
unimplemented {vst1.64 {d18, d19}, [r6]}
mp_mod:
unimplemented {vld1.64 {d16, d17}, [r8]}
unimplemented {vld1.32 {d18, d19}, [r9]}
unimplemented {vst1.64 {d18, d19}, [r8]}
unimplemented {vst1.32 {d16, d17}, [r9]}
mp_exch:
unimplemented {vld1.32 {d16, d17}, [r0]}
unimplemented {vld1.32 {d18, d19}, [r1]}
unimplemented {vst1.32 {d18, d19}, [r0]}
mp_clear:
unimplemented {vst1.32 {d16, d17}, [r4]}
mp_and:
unimplemented {vld1.64 {d16, d17}, [r5]}
unimplemented {vld1.32 {d18, d19}, [r8]}
unimplemented {vst1.64 {d18, d19}, [r5]}
unimplemented {vst1.32 {d16, d17}, [r8]}
mp_div:
unimplemented {vld1.64 {d16, d17}, [r8]}
unimplemented {vst1.64 {d16, d17}, [r0]}
unimplemented {vld1.32 {d18, d19}, [r4]}
unimplemented {vst1.32 {d16, d17}, [r4], r0}
unimplemented {vst1.64 {d18, d19}, [r8]}
unimplemented {vld1.64 {d16, d17}, [r4]}
unimplemented {vld1.32 {d18, d19}, [r10]}
unimplemented {vst1.64 {d18, d19}, [r4]}
unimplemented {vst1.32 {d16, d17}, [r10]}
mp_div_2d:
unimplemented {vld1.64 {d16, d17}, [r8]}
unimplemented {vld1.32 {d18, d19}, [r10]}
unimplemented {vst1.64 {d18, d19}, [r8]}
unimplemented {vst1.32 {d16, d17}, [r10]}
mp_div_3:
unimplemented {smlabb r2, r1, r3, r2}
unimplemented {vld1.32 {d18, d19}, [r4]}
unimplemented {vst1.32 {d16, d17}, [r4]}
mp_div_d:
unimplemented {vld1.64 {d16, d17}, [r5]}
unimplemented {vld1.32 {d18, d19}, [r4]}
unimplemented {vst1.64 {d18, d19}, [r5]}
unimplemented {vst1.32 {d16, d17}, [r4]}
mp_dr_reduce:
unimplemented {umaal r6, r3, r4, r11}
s_mp_exptmod:
unimplemented {vld1.64 {d16, d17}, [r11]}
unimplemented {vld1.32 {d18, d19}, [r0]}
unimplemented {vst1.64 {d18, d19}, [r11]}
unimplemented {vst1.32 {d16, d17}, [r0]}
mp_exptmod_fast:
unimplemented {vld1.64 {d16, d17}, [r1]}
unimplemented {vld1.32 {d18, d19}, [r0]}
unimplemented {vst1.64 {d18, d19}, [r1]}
unimplemented {vst1.32 {d16, d17}, [r0]}
mp_montgomery_reduce:
unimplemented {umaal r3, r5, r1, r6}
mp_exteuclid:
unimplemented {vld1.32 {d18, d19}, [r0]}
unimplemented {vld1.64 {d16, d17}, [r1]}
unimplemented {vst1.64 {d18, d19}, [r1]}
unimplemented {vst1.32 {d16, d17}, [r0]}
unimplemented {vld1.32 {d18, d19}, [r8]}
unimplemented {vld1.64 {d16, d17}, [r0]}
unimplemented {vst1.64 {d18, d19}, [r0]}
unimplemented {vst1.32 {d16, d17}, [r8]}
unimplemented {vld1.64 {d16, d17}, [r11]}
unimplemented {vst1.64 {d18, d19}, [r11]}
mp_gcd:
unimplemented {vld1.64 {d16, d17}, [r10]}
unimplemented {vld1.64 {d18, d19}, [r6]}
unimplemented {vst1.64 {d18, d19}, [r10]}
unimplemented {vst1.64 {d16, d17}, [r6]}
mp_invmod_slow:
unimplemented {vld1.64 {d16, d17}, [r6]}
unimplemented {vst1.64 {d18, d19}, [r6]}
unimplemented {vst1.32 {d16, d17}, [r4]}
mp_sqrt:
unimplemented {vld1.64 {d16, d17}, [r8]}
unimplemented {vld1.32 {d18, d19}, [r10]}
unimplemented {vst1.64 {d18, d19}, [r8]}
unimplemented {vst1.32 {d16, d17}, [r10]}
s_mp_mul_digs:
unimplemented {umaal r1, r5, r10, r11}
unimplemented {vld1.64 {d16, d17}, [r9]}
unimplemented {vld1.32 {d18, d19}, [r0]}
unimplemented {vst1.32 {d16, d17}, [r0]}
unimplemented {vst1.64 {d18, d19}, [r9]}
mp_n_root:
unimplemented {vld1.64 {d16, d17}, [r5]}
unimplemented {vst1.64 {d16, d17}, [r0]}
unimplemented {vld1.32 {d18, d19}, [r2]}
unimplemented {vst1.32 {d16, d17}, [r2], r0}
unimplemented {vst1.64 {d18, d19}, [r5]}
s_mp_mul_high_digs:
unimplemented {umaal r11, r4, r10, r6}
unimplemented {vld1.64 {d16, d17}, [r4]}
unimplemented {vst1.64 {d18, d19}, [r4]}
s_mp_sqr:
unimplemented {vld1.64 {d16, d17}, [r5]}
unimplemented {vld1.32 {d18, d19}, [r6]}
unimplemented {vst1.64 {d18, d19}, [r5]}
unimplemented {vst1.32 {d16, d17}, [r6]}
der_decode_utctime:
unimplemented {vst1.32 {d16, d17}, [r4]}
sha256_init:
unimplemented {vst1.32 {d16, d17}, [r5]!}
unimplemented {vst1.64 {d16, d17}, [r5]}
unimplemented {vld1.64 {d10, d11}, [r0]}
unimplemented {vst1.64 {d10, d11}, [r1]}
sha224_done:
unimplemented {vld1.8 {d16, d17}, [r6], r1}
unimplemented {vst1.8 {d16, d17}, [r4], r1}
unimplemented {vld1.32 {d16, d17}, [r6]}
unimplemented {vst1.8 {d16, d17}, [r4]}
_ZNSt6__ndk113basic_ostreamIcNS_11char_traitsIcEEElsEf:
unimplemented {vcvt.f64.f32 d0, s0}
_ZNSt6__ndk18ios_base6xallocEv:
unimplemented {strex r3, r2, [r1]}
sub_74a50:
unimplemented {vcmp.f64.F64 d0, d1}
unimplemented {vmrs apsr_nzcv, fpscr}
unimplemented {vcmp.f64.F64 d0, d1}
unimplemented {vmrs apsr_nzcv, fpscr}
unimplemented {vcvt.f32.f64 s0, d0}
_ZNSt6__ndk114__shared_count12__add_sharedEv:
unimplemented {strex r2, r1, [r0]}
_ZNSt6__ndk119__shared_weak_count16__release_sharedEv:
unimplemented {strex r3, r2, [r0]}
_ZNSt6__ndk119__shared_weak_count14__release_weakEv:
unimplemented {strex r4, r3, [r1]}
_ZNSt6__ndk119__shared_weak_count4lockEv:
unimplemented {clrex}
unimplemented {strex r3, r4, [r1]}
_ZNSt6__ndk14stofERKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPj:
unimplemented {vcvt.f32.f64 s16, d0}
_ZNSt6__ndk19to_stringEf:
unimplemented {vcvt.f64.f32 d8, s0}
_ZNSt6__ndk16thread4joinEv:
unimplemented {vtbl.8 d22, {d12}, d0}
__cxa_decrement_exception_refcount:
unimplemented {strex r3, r2, [r0]}
__cxa_increment_exception_refcount:
unimplemented {strex r2, r1, [r0]}
__cxa_current_primary_exception:
unimplemented {strex r3, r2, [r1]}
__cxa_guard_release:
unimplemented {vtbl.8 d21, {d28, d29}, d16}
unimplemented {vqrshrun.S64 d20, q0, #4}
__cxa_guard_abort:
unimplemented {vqshrn.U64 d21, q14, #4}
sub_7bc20:
unimplemented {vrev16.64 q11, q2}
unimplemented {vtbl.8 d20, {d12}, d3}
_ZSt15set_new_handlerPFvvE:
unimplemented {strex r3, r0, [r2]}
_ZSt14set_unexpectedPFvvE:
unimplemented {strex r3, r1, [r2]}
sub_828bc:
unimplemented {stc2 p15, c15, [r11, #0x3ec]!}
__cxa_deleted_virtual:
unimplemented {vsli.64 d27, d28, #0x3b}
sub_85ff4:
unimplemented {vrhadd.U16 d14, d14, d31}
sub_867e0:
unimplemented {vrhadd.U16 d14, d2, d31}
sub_868a6:
unimplemented {vsli.32 d27, d1, #0x1b}
sub_868ba:
unimplemented {vcvt.U32.F32 d27, d7, #5}
sub_86ae2:
unimplemented {vcvt.F32.U32 d25, d23, #5}
unimplemented {vshr.U32 d28, d7, #5}
sub_86aec:
unimplemented {vrecpe.f32.F32 q13, q2}
sub_86b5c:
unimplemented {vcvt.U32.F32 d25, d31, #5}
sub_86cd4:
unimplemented {stcl p15, c15, [r1, #0x78]}
sub_87028:
unimplemented {vrecpe.f32.F32 q13, q8}
sub_878c4:
unimplemented {vqshlu.S32 d25, d8, #0x1b}
unimplemented {vqshl.U32 d26, d0, #0x1b}
unimplemented {vqshrn.U64 d25, q3, #5}
sub_87900:
unimplemented {vcvt.U32.F32 q13, q0, #5}
unimplemented {vrsra.U64 d26, d18, #5}
unimplemented {vsli.32 d25, d26, #0x1b}
unimplemented {vrecpe.f32.F32 d26, d23}
sub_87918:
unimplemented {vshr.U32 d27, d3, #5}
sub_86448:
unimplemented {vld1.8 {}, [r2], r0}
unimplemented {vld1.8 {}, [r0]}
unimplemented {vld1.8 {}, [r2]}
unimplemented {vst1.8 {}, [r0]}
sub_879fc:
unimplemented {vldmia r0, {d0, d1, d2, d3, d4, d5, d6, d7, d8, d9, d10, d11, d12, d13, d14, d15}}
sub_87a0c:
unimplemented {vldmia r0, {}}
sub_87a2c:
unimplemented {vstmia r0, {d0, d1, d2, d3, d4, d5, d6, d7, d8, d9, d10, d11, d12, d13, d14, d15}}
sub_87a3c:
unimplemented {vstmia r0, {}}